-
Notifications
You must be signed in to change notification settings - Fork 5
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
Refactor of interview list page #787
Conversation
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.
This is looking pretty solid to me. A few thoughts:
My main question is does a regular interview control these in the same way? That is, do regular interviews use the config by default too, etc? I think it'd be great to have them aligned, and maybe they already are.
Another general question: Are the consts in here, like AL_ORGANIZATION_TITLE
, for backwards compatibility? I'm trying to think about which should take precedence and I'm not sure what a user would expect. I guess the question is whether the new code would change the behavior of existing interview list page without the user being aware. Would they change their config without expecting it to affect their existing interview list page? I think I'm not familiar enough with how folks have been using these to have a useful take on this.
Smaller questions:
interview page title/heading
make me think it's for any interview page, though being underinterview list
helps.- Not a new thing, but something I've only just now articulated to myself - I'm not sure of the difference between
interview page title
andinterview page heading
Other than that, I'm going to avoid details as I can see those are still changing and improving 👍
This very deliberately does not work in the same way as pages that are normally included inside another package. It's installed systemwide and is made so people can change its behavior without forking it. Forking and then changing the global config to point to your custom version of the file is a pretty advanced technique at the moment, while this basic version of the file is installed by the dashboard install script. I think I described this in more detail on our Friday call. In contrast, the assembly_line.yml and dependencies are all included into another interview. You can override and control their behavior naturally, by adding a different value for the variable in the file that you already are editing. Edit: another point is that this is a server wide file. It's not uncommon to co-host orgs on one server. Like Suffolk hosts Northeast Legal Aid and MassLegalHelp content. Does that all make sense? The use of AL_ORGANIZATION_HOMEPAGE, etc is only for backwards compatibility with the custom version of this that @BryceStevenWilley made. I didn't document that intentionally. I'm interested to know if he's open to changing or removing his fork or if he thinks this backwards compatibility is still useful. |
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'm interested to know if he's open to changing or removing his fork or if he thinks this backwards compatibility is still useful.
Yeah, please keep the backwards compatibility. IMO, the maintenance and mental burden of 3 lines of YAML in a wrapper interview is much simpler than 15 lines of config, especially for things like logo alt text and (to be clear, I'm apparently in the minority here, disregard my opinion I guess). It's nice that the configs are all in the same place now, but I would 100% need to go look at the actual interview to figure out the difference between "interview page title", "interview page heading", and "interview page pre".interview page pre
.
Agreed that the names are not the clearest. The only reason I'm sticking with those names is because they are existing names from the Docassemble global configuration. |
Co-authored-by: Bryce Willey <Bryce.Steven.Willey@gmail.com>
Why? It makes the fallback code you have a few lines shorter, but I thought the point of this PR was to move configs around and make it cleaner. You could add some params to the
The names could be better, but to be clear even with better names, I still feel like I'd need to look at the actual interview. |
Any suggestions for better names? This is open to @plocket too. Cost/benefit of renaming the options that mirror Docassemble's existing options for doing the identical task seems low to me. But I haven't thought of names that are a lot better--maybe it will be worth it? |
If they matched the DA attribute they're used in, that would be nice
My general take (idk how right it is) is that DA has 1,000 things to keep track of; unless it's something commonly used in writing an interview, most people won't know what they are, would have to look it up, and probably struggle to do so in docassemble's documentation (i.e. my workflow with settings like this). |
Bryce's choices make more sense to me on principle. I do wish |
…cassemble-AssemblyLine into interview-list-refactor
Here's the high level overview (also possible to get it from the code. currently this message is duplicated in one long comment at the top of the file)
Customize by:
Relevant options and defaults:
interview page title, interview page heading, interview page pre, logo url, interview page url, and new form url
can also be set to a dictionary of languages, like:
These deprecated configuration options will also be respected at a lower priority:
As will the following options from the global config:
Some authors will prefer to customize this page by importing it and overriding the default values
in the YAML file rather than the global configuration. This is slightly more advance than editing
the configuration, but may be just as easy to maintain.
To do this, make a new YAML file and include your custom theme/settings YAML.
It's important to include your theme AFTER the interview list page:
e.g., my_new_interview_list.yml would only need to contain:
Then you would set the following in your global config:
In some instances, this may be all that is required to use your branding on the
interview list page. You can individually override additional variables as follows: