diff options
author | bnewbold <bnewbold@archive.org> | 2020-08-03 18:00:41 +0000 |
---|---|---|
committer | bnewbold <bnewbold@archive.org> | 2020-08-03 18:00:41 +0000 |
commit | 4702bee24dde8bae64df76ad411a6d8329cc9bdf (patch) | |
tree | 221ec7bd8d77bddb2dec344c19253cca65156911 /python/fatcat_web/templates | |
parent | 5037642d7775c638d035c2faed8094537dfaf94d (diff) | |
parent | 31f59b4b0ba7ff95b685c8826a7d019fb142f65c (diff) | |
download | fatcat-4702bee24dde8bae64df76ad411a6d8329cc9bdf.tar.gz fatcat-4702bee24dde8bae64df76ad411a6d8329cc9bdf.zip |
Merge branch 'bnewbold-editing' into 'master'
editing improvements
See merge request webgroup/fatcat!73
Diffstat (limited to 'python/fatcat_web/templates')
-rw-r--r-- | python/fatcat_web/templates/base.html | 4 | ||||
-rw-r--r-- | python/fatcat_web/templates/container_create.html | 4 | ||||
-rw-r--r-- | python/fatcat_web/templates/container_edit.html | 8 | ||||
-rw-r--r-- | python/fatcat_web/templates/deleted_entity.html | 2 | ||||
-rw-r--r-- | python/fatcat_web/templates/edit_macros.html | 19 | ||||
-rw-r--r-- | python/fatcat_web/templates/editgroup_view.html | 2 | ||||
-rw-r--r-- | python/fatcat_web/templates/entity_create_toml.html | 20 | ||||
-rw-r--r-- | python/fatcat_web/templates/entity_delete.html | 49 | ||||
-rw-r--r-- | python/fatcat_web/templates/entity_edit.html | 8 | ||||
-rw-r--r-- | python/fatcat_web/templates/entity_edit_toml.html | 55 | ||||
-rw-r--r-- | python/fatcat_web/templates/entity_macros.html | 12 | ||||
-rw-r--r-- | python/fatcat_web/templates/file_create.html | 4 | ||||
-rw-r--r-- | python/fatcat_web/templates/file_edit.html | 8 | ||||
-rw-r--r-- | python/fatcat_web/templates/home.html | 12 | ||||
-rw-r--r-- | python/fatcat_web/templates/release_create.html | 4 | ||||
-rw-r--r-- | python/fatcat_web/templates/release_edit.html | 35 |
16 files changed, 213 insertions, 33 deletions
diff --git a/python/fatcat_web/templates/base.html b/python/fatcat_web/templates/base.html index 18c66077..2c18ec44 100644 --- a/python/fatcat_web/templates/base.html +++ b/python/fatcat_web/templates/base.html @@ -25,6 +25,10 @@ @media only screen and (max-width: 479px) { .mobile-hide{ display: none !important; } } + + .field textarea#toml { + font-family: monospace; + } </style> {% block extra_head %}{% endblock %} </head> diff --git a/python/fatcat_web/templates/container_create.html b/python/fatcat_web/templates/container_create.html index 5786d05d..be8c5671 100644 --- a/python/fatcat_web/templates/container_create.html +++ b/python/fatcat_web/templates/container_create.html @@ -9,13 +9,15 @@ a journal (eg, "New England Journal of Medicine"), conference proceedings, a book series, or a blog. Not all publications are in a container. <form class="ui form" id="create_container_form" method="POST" action="/container/create"> + <p>Experienced users can also use the <a href="/container/create/toml">TOML + creation form</a> to access all metadata fields in a raw format. {% endblock %} {% block edit_form_suffix %} <br><br> <input class="ui primary submit button" type="submit" value="Create Container!"> <p> - <i>New entity will be part of the current editgroup, which needs to be + <i>New container entity will be part of the current editgroup, which needs to be submited and approved before the entity will formally be included in the catalog.</i> </form> diff --git a/python/fatcat_web/templates/container_edit.html b/python/fatcat_web/templates/container_edit.html index 5188ce0d..99f77d53 100644 --- a/python/fatcat_web/templates/container_edit.html +++ b/python/fatcat_web/templates/container_edit.html @@ -7,6 +7,14 @@ <h1 class="ui header">Edit Container Entity</h1> <form class="ui form" id="edit_container_form" method="POST" action="{% if editgroup %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/container/{{ existing_ident }}/edit"> + + <p>Experienced users can also use the <a href="{% if editgroup + %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/container/{{ + existing_ident }}/edit/toml">TOML editing form</a> to access all metadata + fields in a raw format. + {% if not editgroup %} + You can also <a href="/container/{{ existing_ident }}/delete">delete this entity</a>. + {% endif %} {% endblock %} <p>See <a href="https://guide.fatcat.wiki/entity_container.html">the catalog diff --git a/python/fatcat_web/templates/deleted_entity.html b/python/fatcat_web/templates/deleted_entity.html index eefc87cf..4c6b14b6 100644 --- a/python/fatcat_web/templates/deleted_entity.html +++ b/python/fatcat_web/templates/deleted_entity.html @@ -30,7 +30,7 @@ <b>Entity Type:</b> <code>{{ entity_type }}</code> </div> -{{ entity_macros.fatcat_bits(entity, entity_type, "") }} +{{ entity_macros.fatcat_bits(entity, entity_type, "", editgroup=editgroup) }} </div> </div> diff --git a/python/fatcat_web/templates/edit_macros.html b/python/fatcat_web/templates/edit_macros.html index a207e51e..d4839373 100644 --- a/python/fatcat_web/templates/edit_macros.html +++ b/python/fatcat_web/templates/edit_macros.html @@ -17,6 +17,23 @@ </div> {%- endmacro %} +{% macro form_toml_field(field, div_classes="") -%} +<h3 class="ui dividing header">Raw Metadata (TOML)</h3> +<div class="field {{ div_classes }} {% if field.errors %}error{% endif %}"> + <p><a href="https://toml.io/en/">TOML</a> is a markup language, similar to + YAML or Wikitext. The schema here is the same as the Fatcat API JSON schema, but + with a syntax that is easier to read and edit by hand. All nested metadata + fields are available here; refer to the fatcat guide for metadata + documentation and style guide, or TOML documentation for syntax notes (eg, + what those double brackets mean, and how to represent lists of authors or + references). + <br> + <br> + {{ field(rows=24) }} + {{ form_field_errors(field) }} +</div> +{%- endmacro %} + {% macro form_field_inline(field, div_classes="") -%} <div class="ui grid"> <div class="three wide column middle aligned right aligned" {# style="padding-right: 0.5rem;" #}> @@ -38,7 +55,7 @@ {% macro editgroup_dropdown(form, editgroup=None, potential_editgroups=None) -%} {% if editgroup %} <p>You are updating an existing un-merged editgroup: <a href="/editgroup/{{ editgroup.editgroup_id}}">{{ editgroup.editgroup_id }}</a>. - <p><b>Description:</b> {{ editgroup.description }} + <p><b>Description:</b> {{ editgroup.description or "" }} {% else %} {% if not potential_editgroups %} <p>You have no un-submitted editgroups in progress; a new one will be diff --git a/python/fatcat_web/templates/editgroup_view.html b/python/fatcat_web/templates/editgroup_view.html index e8146d19..a36dc3e5 100644 --- a/python/fatcat_web/templates/editgroup_view.html +++ b/python/fatcat_web/templates/editgroup_view.html @@ -25,7 +25,7 @@ updated {% endif %} <a href="/editgroup/{{ editgroup.editgroup_id }}/{{ entity_type }}/{{ edit.ident }}">[view edit]</a> - {% if auth_to.edit and not editgroup.changelog_index and not editgroup.submitted and entity_type in ('release', 'file', 'container') %} + {% if auth_to.edit and not editgroup.changelog_index and not editgroup.submitted %} <a href="/editgroup/{{ editgroup.editgroup_id }}/{{ entity_type }}/{{ edit.ident }}/edit" style="color: green;">[re-edit]</a> <form id="submit_edit_delete" method="POST" action="/editgroup/{{ editgroup.editgroup_id }}/{{ entity_type }}/edit/{{ edit.edit_id }}/delete" style="display:inline;"> <input type="hidden" name="csrf_token" value="{{ csrf_token() }}"/> diff --git a/python/fatcat_web/templates/entity_create_toml.html b/python/fatcat_web/templates/entity_create_toml.html new file mode 100644 index 00000000..ec5bc4a2 --- /dev/null +++ b/python/fatcat_web/templates/entity_create_toml.html @@ -0,0 +1,20 @@ +{% extends "entity_edit_toml.html" %} + +{% block edit_form_prefix %} +<div class="ui segment"> +<h1 class="ui header">Create New {{ entity_type }} Entity (TOML mode)</h1> + +<form class="ui form" id="create_entity_form" method="POST" action="/{{ entity_type }}/create/toml"> +{% endblock %} + +{% block edit_form_suffix %} + <br><br> + <input class="ui primary submit button" type="submit" value="Create {{ entity_type }}!"> + <p> + <i>New {{ entity_type }} entity will be part of the current editgroup, which + needs to be submited and approved before the entity will formally be included + in the catalog.</i> +</form> +</div> +{% endblock %} + diff --git a/python/fatcat_web/templates/entity_delete.html b/python/fatcat_web/templates/entity_delete.html new file mode 100644 index 00000000..b2e13af4 --- /dev/null +++ b/python/fatcat_web/templates/entity_delete.html @@ -0,0 +1,49 @@ +{% import "edit_macros.html" as edit_macros %} +{% extends "base.html" %} + +{% block body %} +{% block edit_form_prefix %} + <div class="ui segment"> + <h1 class="ui header">Delete Entity</h1> + + <form class="ui form" id="delete_form" method="POST" action="{% if editgroup and editgroup.editgroup_id %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/{{ entity_type }}/{{ existing_ident }}/delete"> +{% endblock %} + + <p>See <a href="https://guide.fatcat.wiki/entity_release.html">the catalog + style guide</a> for schema notes, and <a + href="https://guide.fatcat.wiki/editing_quickstart.html">the editing + tutorial</a> if this is your first time making an edit. + + {{ form.hidden_tag() }} + + <h3 class="ui dividing header">Editgroup Metadata</h3> + {{ edit_macros.editgroup_dropdown(form, editgroup, potential_editgroups) }} + + <h3 class="ui dividing header">Submit</h3> + {{ edit_macros.form_field_basic(form.edit_description) }} + This description will be attached to the individual edit, not to the + editgroup as a whole. + +{% block edit_form_suffix %} + <br><br> + <input class="ui primary submit button" type="submit" value="Update Release!"> + <p> + <i>Deletion will be part of the current editgroup, which needs to be submited and + approved before the change is included in the catalog.</i> +</form> +</div> +{% endblock %} +{% endblock %} + +{% block postscript %} +<script src="https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js"></script> +<script> +<!-- Form code --> +$(document).ready(function() { + + // these javascript dropdowns hide the original <input>, which breaks browser + // form focusing (eg, for required fields) :( + $('.ui.dropdown') .dropdown(); +}); +</script> +{% endblock %} diff --git a/python/fatcat_web/templates/entity_edit.html b/python/fatcat_web/templates/entity_edit.html deleted file mode 100644 index 97f7bf46..00000000 --- a/python/fatcat_web/templates/entity_edit.html +++ /dev/null @@ -1,8 +0,0 @@ -{% extends "base.html" %} -{% block body %} - -<h1>Not Implemented</h1> - -<p>Entity editing via the web interface isn't implemented yet. Sorry! - -{% endblock %} diff --git a/python/fatcat_web/templates/entity_edit_toml.html b/python/fatcat_web/templates/entity_edit_toml.html new file mode 100644 index 00000000..64768d6e --- /dev/null +++ b/python/fatcat_web/templates/entity_edit_toml.html @@ -0,0 +1,55 @@ +{% import "edit_macros.html" as edit_macros %} +{% extends "base.html" %} + +{% block body %} +{% block edit_form_prefix %} + <div class="ui segment"> + <h1 class="ui header">Edit Entity (TOML mode)</h1> + + <form class="ui form" id="edit_toml_form" method="POST" action="{% if editgroup and editgroup.editgroup_id %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/{{ entity_type }}/{{ existing_ident }}/edit/toml"> + + {% if not editgroup %} + <p>You can also <a href="/{{ entity_type }}/{{ existing_ident }}/delete">delete this entity</a>. + {% endif %} +{% endblock %} + + <p>See <a href="https://guide.fatcat.wiki/entity_release.html">the catalog + style guide</a> for schema notes, and <a + href="https://guide.fatcat.wiki/editing_quickstart.html">the editing + tutorial</a> if this is your first time making an edit. + + {{ form.hidden_tag() }} + + <h3 class="ui dividing header">Editgroup Metadata</h3> + {{ edit_macros.editgroup_dropdown(form, editgroup, potential_editgroups) }} + + {{ edit_macros.form_toml_field(form.toml, "required") }} + + <h3 class="ui dividing header">Submit</h3> + {{ edit_macros.form_field_basic(form.edit_description) }} + This description will be attached to the individual edit, not to the + editgroup as a whole. + +{% block edit_form_suffix %} + <br><br> + <input class="ui primary submit button" type="submit" value="Update Release!"> + <p> + <i>Edit will be part of the current editgroup, which needs to be submited and + approved before the change is included in the catalog.</i> +</form> +</div> +{% endblock %} +{% endblock %} + +{% block postscript %} +<script src="https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js"></script> +<script> +<!-- Form code --> +$(document).ready(function() { + + // these javascript dropdowns hide the original <input>, which breaks browser + // form focusing (eg, for required fields) :( + $('.ui.dropdown') .dropdown(); +}); +</script> +{% endblock %} diff --git a/python/fatcat_web/templates/entity_macros.html b/python/fatcat_web/templates/entity_macros.html index 718c071c..0ce646bf 100644 --- a/python/fatcat_web/templates/entity_macros.html +++ b/python/fatcat_web/templates/entity_macros.html @@ -33,7 +33,7 @@ {% if entity.state %} State is "{{ entity.state }}". {% endif %} - {% if entity.state != "deleted" %} + {% if entity.revision %} Revision: <br><small><code><a href="/{{ entity_type }}/rev/{{ entity.revision }}">{{ entity.revision }}</a></code></small> {% endif %} @@ -43,11 +43,13 @@ {%- else -%} https://api.{{ config.FATCAT_DOMAIN }} {%- endif -%} - /v0/{{ entity_type }} - {%- if entity.ident -%} - /{{ entity.ident }} + /v0 + {%- if editgroup and entity.ident -%} + /editgroup/{{ editgroup.editgroup_id }}{# /{{ entity_type }}/{{ entity.ident }} #} + {%- elif entity.ident -%} + /{{ entity_type }}/{{ entity.ident }} {%- elif entity.revision -%} - /rev/{{ entity.revision }} + /{{ entity_type }}/rev/{{ entity.revision }} {% endif %} {% if expand %}?expand={{ expand}}{% endif %}"> As JSON object via API diff --git a/python/fatcat_web/templates/file_create.html b/python/fatcat_web/templates/file_create.html index a7c99b96..affcfb6e 100644 --- a/python/fatcat_web/templates/file_create.html +++ b/python/fatcat_web/templates/file_create.html @@ -5,13 +5,15 @@ <h1 class="ui header">Create New File Entity</h1> <form class="ui form" id="create_file_form" method="POST" action="/file/create"> + <p>Experienced users can also use the <a href="/file/create/toml">TOML + creation form</a> to access all metadata fields in a raw format. {% endblock %} {% block edit_form_suffix %} <br><br> <input class="ui primary submit button" type="submit" value="Create File!"> <p> - <i>New entity will be part of the current editgroup, which needs to be + <i>New file entity will be part of the current editgroup, which needs to be submited and approved before the entity will formally be included in the catalog.</i> </form> diff --git a/python/fatcat_web/templates/file_edit.html b/python/fatcat_web/templates/file_edit.html index e8a421b3..745b0c41 100644 --- a/python/fatcat_web/templates/file_edit.html +++ b/python/fatcat_web/templates/file_edit.html @@ -7,6 +7,14 @@ <h1 class="ui header">Edit File Entity</h1> <form class="ui form" id="edit_file_form" method="POST" action="{% if editgroup %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/file/{{ existing_ident }}/edit"> + + <p>Experienced users can also use the <a href="{% if editgroup + %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/file/{{ + existing_ident }}/edit/toml">TOML editing form</a> to access all metadata + fields in a raw format. + {% if not editgroup %} + You can also <a href="/file/{{ existing_ident }}/delete">delete this entity</a>. + {% endif %} {% endblock %} <p>See <a href="https://guide.fatcat.wiki/entity_file.html">the catalog diff --git a/python/fatcat_web/templates/home.html b/python/fatcat_web/templates/home.html index 4557e212..de32d6a4 100644 --- a/python/fatcat_web/templates/home.html +++ b/python/fatcat_web/templates/home.html @@ -171,11 +171,10 @@ <tr><td><b>Creator</b> <br>authors, editors, translators + <td><a href="/creator/create">Create</a> {% if config.FATCAT_DOMAIN == 'fatcat.wiki' %} - <td> <td><a href="/creator/iimvc523xbhqlav6j3sbthuehu">Author</a> {% else %} - <td><!-- <a href="/creator/create">Create</a> --> <td><a href="/creator/iimvc523xbhqlav6j3sbthuehu">Author</a> (prod) <br><a href="/creator/aaaaaaaaaaaaaircaaaaaaaaai">Dummy</a> <br><a href="/creator/aaaaaaaaaaaaaircaaaaaaaaam">Realistic</a> @@ -206,11 +205,10 @@ </form> <tr><td><b>File Set</b> <br>datasets, suplementary materials + <td><a href="/fileset/create">Create</a> {% if config.FATCAT_DOMAIN == 'fatcat.wiki' %} - <td> <td><a href="/fileset/ho376wmdanckpp66iwfs7g22ne">Dataset</a> {% else %} - <td> <td><a href="/fileset/ho376wmdanckpp66iwfs7g22ne">Dataset</a> (prod) <br><a href="/fileset/aaaaaaaaaaaaaztgaaaaaaaaai">Dummy</a> <br><a href="/fileset/aaaaaaaaaaaaaztgaaaaaaaaam">Realistic</a> @@ -218,12 +216,11 @@ <td> <tr><td><b>Web Capture</b> <br>HTML and interactive articles, blog posts + <td><a href="/webcapture/create">Create</a> {% if config.FATCAT_DOMAIN == 'fatcat.wiki' %} - <td> <td><a href="/webcapture/z7uaeatyvfgwdpuxtrdu4okqii">D-Lib</a> <br><a href="/webcapture/5l2pubtfefbmdnqws2izccqlpm">Blog Post</a> {% else %} - <td> <td><a href="/webcapture/z7uaeatyvfgwdpuxtrdu4okqii">D-Lib</a> (prod) <br><a href="/webcapture/aaaaaaaaaaaaa53xaaaaaaaaai">Dummy</a> <br><a href="/webcapture/aaaaaaaaaaaaa53xaaaaaaaaam">Realistic</a> @@ -231,11 +228,10 @@ <td> <tr><td><b>Work</b> <br>for grouping Releases + <td><a href="/work/create">Create</a> {% if config.FATCAT_DOMAIN == 'fatcat.wiki' %} - <td> <td><a href="/work/ftl6xv267vb6xfech3khri3nwa">Paper</a> {% else %} - <td> <td><a href="/work/ftl6xv267vb6xfech3khri3nwa">Paper</a> (prod) <br><a href="/work/aaaaaaaaaaaaavkvaaaaaaaaai">Dummy</a> <br><a href="/work/aaaaaaaaaaaaavkvaaaaaaaaam">Realistic</a> diff --git a/python/fatcat_web/templates/release_create.html b/python/fatcat_web/templates/release_create.html index 5ec2efe5..4f5dabd7 100644 --- a/python/fatcat_web/templates/release_create.html +++ b/python/fatcat_web/templates/release_create.html @@ -5,13 +5,15 @@ <h1 class="ui header">Create New Release Entity</h1> <form class="ui form" id="create_release_form" method="POST" action="/release/create"> + <p>Experienced users can also use the <a href="/release/create/toml">TOML + creation form</a> to access all metadata fields in a raw format. {% endblock %} {% block edit_form_suffix %} <br><br> <input class="ui primary submit button" type="submit" value="Create Release!"> <p> - <i>New entity will be part of the current editgroup, which needs to be + <i>New release entity will be part of the current editgroup, which needs to be submited and approved before the entity will formally be included in the catalog.</i> </form> diff --git a/python/fatcat_web/templates/release_edit.html b/python/fatcat_web/templates/release_edit.html index a4a7e56f..c26c9850 100644 --- a/python/fatcat_web/templates/release_edit.html +++ b/python/fatcat_web/templates/release_edit.html @@ -7,6 +7,14 @@ <h1 class="ui header">Edit Release Entity</h1> <form class="ui form" id="edit_release_form" method="POST" action="{% if editgroup %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/release/{{ existing_ident }}/edit"> + + <p>Experienced users can also use the <a href="{% if editgroup + %}/editgroup/{{ editgroup.editgroup_id }}{% endif %}/release/{{ + existing_ident }}/edit/toml">TOML editing form</a> to access all metadata + fields in a raw format. + {% if not editgroup %} + You can also <a href="/release/{{ existing_ident }}/delete">delete this entity</a>. + {% endif %} {% endblock %} <p>See <a href="https://guide.fatcat.wiki/entity_release.html">the catalog @@ -14,6 +22,7 @@ href="https://guide.fatcat.wiki/editing_quickstart.html">the editing tutorial</a> if this is your first time making an edit. + {{ form.hidden_tag() }} <h3 class="ui dividing header">Editgroup Metadata</h3> @@ -21,21 +30,22 @@ <br> <h3 class="ui dividing header">The Basics</h3> + + {{ edit_macros.form_field_inline(form.release_type, "required") }} + {{ edit_macros.form_field_inline(form.title, "required") }} + {{ edit_macros.form_field_inline(form.original_title) }} + <div class="ui grid"> <div class="three wide column" style="padding-bottom: 0px;"></div> <div class="twelve wide column" style="padding-bottom: 0px;"> <div class="ui equal width fields"> - {{ edit_macros.form_field_basic(form.release_type, "required") }} - {{ edit_macros.form_field_basic(form.release_stage) }} + {{ edit_macros.form_field_basic(form.release_year) }} + {{ edit_macros.form_field_basic(form.release_date) }} </div> </div> <div class="one wide column" style="padding-bottom: 0px;"></div> </div> - {{ edit_macros.form_field_inline(form.title, "required") }} - {{ edit_macros.form_field_inline(form.original_title) }} - {{ edit_macros.form_field_inline(form.work_id) }} - {{ edit_macros.form_field_inline(form.release_date) }} <div class="ui grid"> <div class="three wide column" style="padding-bottom: 0px;"></div> <div class="twelve wide column" style="padding-bottom: 0px;"> @@ -47,6 +57,19 @@ <div class="one wide column" style="padding-bottom: 0px;"></div> </div> + <div class="ui grid"> + <div class="three wide column" style="padding-bottom: 0px;"></div> + <div class="twelve wide column" style="padding-bottom: 0px;"> + <div class="ui equal width fields"> + {{ edit_macros.form_field_basic(form.release_stage) }} + {{ edit_macros.form_field_basic(form.withdrawn_status) }} + </div> + </div> + <div class="one wide column" style="padding-bottom: 0px;"></div> + </div> + + {{ edit_macros.form_field_inline(form.work_id) }} + <br> <h3 class="ui dividing header">Contributors</h3> <div class="list-group" id="contrib_list" name="contrib_list"> |