-
-
Notifications
You must be signed in to change notification settings - Fork 136
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
Implement upload portal for missouri and mississippi court opinions #4034
base: main
Are you sure you want to change the base?
Implement upload portal for missouri and mississippi court opinions #4034
Conversation
add summary to cluster in make_objects
…ssissippi-court-opinions
for more information, see https://pre-commit.ci
…ssissippi-court-opinions
…ssissippi-court-opinions
…ssissippi-court-opinions
…ssissippi-court-opinions
…ssissippi-court-opinions
…ssissippi-court-opinions
…ssissippi-court-opinions
update make_objects function update BaseCourtUploadForm
…ssissippi-court-opinions
…ssissippi-court-opinions
… court of appeals (with temporary ids for the new courts)
…-missouri-mississippi-court-opinions' into 3996-implement-upload-portal-for-missouri-mississippi-court-opinions
…ssissippi-court-opinions
…ssissippi-court-opinions
…-missouri-mississippi-court-opinions' into 3996-implement-upload-portal-for-missouri-mississippi-court-opinions
@quevon24 I think we talked about using seal-rookery to generate the seals. |
widget=forms.Textarea(attrs={"class": "form-control"}), | ||
) | ||
|
||
# TODO this could be a select field with hardcoded options for a specific court |
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.
?
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 thought that if we have the lower court names, we could create a list with lower court names, so that the court names are normalized
@@ -103,6 +103,7 @@ def make_objects( | |||
item.get("source") or Docket.SCRAPER, | |||
blocked=blocked, | |||
date_blocked=date_blocked, | |||
appeal_from_str=item.get("lower_court_str", ""), |
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.
why is this part of this PR
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.
Because we use that function to create the objects but currently does not allow saving lower court, that's why I had to update it
cl/opinion_page/forms.py
Outdated
self.cleaned_data["item"] = { | ||
"source": Docket.DIRECT_INPUT, | ||
"cluster_source": SOURCES.DIRECT_COURT_INPUT, | ||
"cluster_disposition": self.cleaned_data.get("disposition", ""), |
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.
the language here is inconsistent really with how we use it.
I'm not sure why you are using cluster_disposition instead of just disposition
same with date_filed.
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.
yes, i already checked carefully, i saw that the only model that has the disposition field is OpinionCluster, so it is only "disposition"
regarding date_filed, it has been defined as item["case_dates"] since 2019, making the change would imply modifying the code where the make_objects function is used, that could be done in an independent PR
widget=forms.TextInput( | ||
attrs={ | ||
"class": "form-control", | ||
"placeholder": "Judges / Lead author string, use this in case you can't " |
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 think you are conflating author/author_str on the opinion object with judges and panel on the cluster.
author = models.ForeignKey(
"people_db.Person",
help_text="The primary author of this opinion as a normalized field",
related_name="opinions_written",
on_delete=models.RESTRICT,
blank=True,
null=True,
)
author_str = models.TextField(
help_text=(
"The primary author of this opinion, as a simple text "
"string. This field is used when normalized judges cannot "
"be placed into the author field."
),
blank=True,
)
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.
So there should be a Charfield field in the form for judges and another for author?
…ssissippi-court-opinions
rename dict item from cluster_disposition to disposition change default opinion type improve form selection based on pk remove seals
…ssissippi-court-opinions
These are the implementations for the upload portal for mo, moctapp, miss and missctapp.
Based on what I saw on their sites, i define the following fields for the forms: caption, docket number, publication date, optional lead author and pdf file, only for Mississippi a summary field is required. I didn't find that they had neutral citations like maine or tennessee.
The information I added about the courts was extracted from their pages
I added a back button in the form and an asterisk to indicate required fields.
Tennessee and Maine maintain the same functionality, they just use the same base form.
miss fields:
missctapp fields:
mo fields:
moctapp fields:
Steps:
Add the new courts to courtlistener:
Add new user groups and assign users to the groups: