aboutsummaryrefslogtreecommitdiff
path: root/qc_app
AgeCommit message (Collapse)Author
2024-06-27Fix bugs in error-reporting.Frederick Muriuki Muriithi
2024-06-27Upload chunking: Provide UI and code for drag&drop and chunkingFrederick Muriuki Muriithi
* Use resumable.js to handle the drag-and-drop feature, and chunking. * Add styling for the drag-and-drop area, and provide visual indication when a file is successfully dropped and added to the upload list.
2024-06-25Add route to fetch node-js modules.Frederick Muriuki Muriithi
2024-06-14Add banner similar to GeneNetwork2Frederick Muriuki Muriithi
2024-06-14Fix minor UI bugsFrederick Muriuki Muriithi
2024-06-14Update page headingsFrederick Muriuki Muriithi
2024-06-14Remove unused template importsFrederick Muriuki Muriithi
2024-06-14Use bootstrap for displaying progress widgetFrederick Muriuki Muriithi
This commit converts the progress indication widget into a bootstrap modal dialog, and updates the javascript to prevent the code from interacting with bootstrap in unpredictable ways.
2024-06-14jquery, bootstrap: update page dependenciesFrederick Muriuki Muriithi
* Add jquery which is needed for bootstrap plugins. * Add the default bootstrap theme. * Provide route to serve up jquery libraries.
2024-06-14Move the modal to top of page to avoid display issuesFrederick Muriuki Muriithi
According to https://getbootstrap.com/docs/3.3/javascript/#callout-modal-markup-placement the bootstrap modal dialogs should be placed at the top of the page to avoid other components affecting their display and/or functionality.
2024-06-13Fix tests and issues caught by tests.update-templates-for-bootstrapFrederick Muriuki Muriithi
2024-06-13Handle HTTP errors gracefully.Frederick Muriuki Muriithi
2024-06-13Update the help text.Frederick Muriuki Muriithi
2024-06-13Clean up landing pageFrederick Muriuki Muriithi
Leave only data upload type selection on landing page.
2024-06-13Update html templates to use bootstrap for stylingFrederick Muriuki Muriithi
2024-06-12Update templates to use bootstrap classes.Frederick Muriuki Muriithi
2024-06-12Use bundled bootstrap for styling the UIFrederick Muriuki Muriithi
Use bootstrap to eliminate a myriad of UI styling headaches.
2024-06-12Make URI and UI correspond to each other.Frederick Muriuki Muriithi
Formerly, the URI and UI were not corresponding to each other, e.g. the URI /upload/samples/select_species would display the UI for selecting/creating the population. This was very confusing. This commit fixes that. The commit also adds in user input validation to catch input errors.
2024-06-12Bug: Provide missing argument. Remove unused verr variable.Frederick Muriuki Muriithi
2024-06-12Validate input before attempting to use it.Frederick Muriuki Muriithi
2024-06-12Provide an input validation module.Frederick Muriuki Muriithi
2024-05-05Fix indentation.Frederick Muriuki Muriithi
2024-05-05Provide default for InbredSetIdFrederick Muriuki Muriithi
The `InbredSetId` field in the `InbredSet` table in MariaDB is in some instances a required field, so we need to provide a value. This value should be the same as that for the `Id` field, that we do not previously know. This commit provides a value of zero (0) as the default. This value is subsequently updated to be same as that of the `Id` field.
2024-04-17Use `cursor.lastrowid` to get row identifierFrederick Muriuki Muriithi
Use the more robust `cursor.lastrowid` to get the row identifier value, rather than using the `SELECT MAX(Id) …` form. With the `cursor.lastrowid` form, we do not have to remember to add 1 to the value to avoid conflict.
2024-04-16Set InbredSet.InbredSetId value in a more robust way.Frederick Muriuki Muriithi
2024-04-16bug: Set ProbeFreezeId for only new row!Frederick Muriuki Muriithi
Previously the extra ProbeFreezeId column was being updated for *ALL* rows, rather than just the newly inserted row, which is a bug. This commit fixes that.
2024-04-12Provide more relevant error message.Frederick Muriuki Muriithi
2024-04-12Provide defaults for required field.Frederick Muriuki Muriithi
2024-04-12Add missing return.Frederick Muriuki Muriithi
2024-04-12Consistently check for possibly non-existent dataFrederick Muriuki Muriithi
The "geno-dataset", "tissue", "pheno-study" and "pheno-dataset" data "objects" might not exist for a particular uploaded bundle, so we check in a consistent manner to ensure they are provided when needed.
2024-04-12Provide tissue-id details to probeset dataset templatesFrederick Muriuki Muriithi
2024-04-10linting: Fix linting errors.Frederick Muriuki Muriithi
2024-04-10logging: Set up logging in wsgi.pyFrederick Muriuki Muriithi
Make flask use the gunicorn loggers when run under gunicorn, otherwise, use our custom logging. Putting the logging setup inside `create_app(…)` would cause each worker to override the gunicorn loggers, meaning we were not receiving the logs, especially for `debug(…)` calls.
2024-04-10Gracefully handle all `werkzeug.exceptions` errors.Frederick Muriuki Muriithi
2024-04-10Use application logger, not root logger.Frederick Muriuki Muriithi
2024-04-08Add logging for IntegrityErrorFrederick Muriuki Muriithi
2024-04-08Refactor: Make error-checking more robustFrederick Muriuki Muriithi
Rather than maintaining a dictionary of possible error-checking functions, this commit allows passing in the error-checking functions necessary for each point. This makes the code easier to extend by simply defining a new error-checking function and passing it in to the error-checking "driver".
2024-04-08Fix issues caught by integration tests.Frederick Muriuki Muriithi
2024-04-08Fix pylint and mypy errors.Frederick Muriuki Muriithi
2024-04-08bug: UI: Provide better error messaging.Frederick Muriuki Muriithi
2024-04-08bug: Handle IntegrityError: Studies cannot have same name.Frederick Muriuki Muriithi
2024-04-08bug: Check that Genotype dataset name is not duplicated.Frederick Muriuki Muriithi
2024-04-05Handle exceptions creating ProbeSet datasets.Frederick Muriuki Muriithi
2024-04-05Add explicit route for favicon to reduce noise in the logs.Frederick Muriuki Muriithi
2024-03-29Add UI to select/create tissue.Frederick Muriuki Muriithi
2024-03-20Use `url_for` to get icon.Frederick Muriuki Muriithi
2024-03-19Set up application logging.Frederick Muriuki Muriithi
2024-03-19Add debugging statements to track upload of R/qtl2 bundle.Frederick Muriuki Muriithi
2024-03-19Query by `Id` rather than `ProbeFreezeId`Frederick Muriuki Muriithi
Previously `ProbeFreezeId` was set as 1 more than the largest `Id` value found, which might not end up being the same as the incremented Id. This commit, thus, queries by `Id` which is more robust, and does an actual update for the `ProbeFreezeId` column to make it same value as `Id`.
2024-03-15Move defaults settings into qc_app module.Frederick Muriuki Muriithi