From 7f977fe464b359d6c9d375557724309808836f61 Mon Sep 17 00:00:00 2001 From: Lazlo Westerhof Date: Fri, 1 Nov 2024 14:15:46 +0100 Subject: [PATCH] =?UTF-8?q?Sunset=20intake=20module=20=F0=9F=AB=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.py | 7 - .../templates/group_manager/index.html | 6 +- intake/intake.py | 311 ----- .../intake/css/datatables.bootstrap.min.css | 7 - intake/static/intake/css/intake.css | 83 -- .../static/intake/css/jquery.dataTables.css | 476 -------- .../intake/css/treetable/jquery.treetable.css | 28 - .../jquery.treetable.theme.default.css | 96 -- intake/static/intake/images/Thumbs.db | Bin 3584 -> 0 bytes intake/static/intake/images/ajax-loader.gif | Bin 3208 -> 0 bytes intake/static/intake/images/back_disabled.png | Bin 1361 -> 0 bytes intake/static/intake/images/back_enabled.png | Bin 1379 -> 0 bytes .../intake/images/back_enabled_hover.png | Bin 1375 -> 0 bytes .../images/datatables/Sorting icons.psd | Bin 27490 -> 0 bytes .../images/datatables/back_disabled.png | Bin 1361 -> 0 bytes .../intake/images/datatables/back_enabled.png | Bin 1379 -> 0 bytes .../images/datatables/back_enabled_hover.png | Bin 1375 -> 0 bytes .../images/datatables/details_close.gif | Bin 974 -> 0 bytes .../intake/images/datatables/details_open.gif | Bin 145 -> 0 bytes .../intake/images/datatables/favicon.ico | Bin 894 -> 0 bytes .../images/datatables/forward_disabled.png | Bin 1363 -> 0 bytes .../images/datatables/forward_enabled.png | Bin 1380 -> 0 bytes .../datatables/forward_enabled_hover.png | Bin 1379 -> 0 bytes .../images/datatables/old_details_close.png | Bin 686 -> 0 bytes .../images/datatables/old_details_open.png | Bin 709 -> 0 bytes .../intake/images/datatables/sort_asc.png | Bin 1118 -> 0 bytes .../images/datatables/sort_asc_disabled.png | Bin 1050 -> 0 bytes .../intake/images/datatables/sort_both.png | Bin 1136 -> 0 bytes .../intake/images/datatables/sort_desc.png | Bin 1127 -> 0 bytes .../images/datatables/sort_desc_disabled.png | Bin 1045 -> 0 bytes .../images/datatables/status_frozen.png | Bin 2477 -> 0 bytes .../images/datatables/status_locked.png | Bin 2341 -> 0 bytes .../images/datatables/status_scanned.png | Bin 2387 -> 0 bytes .../datatables/triangle_details_close.png | Bin 1280 -> 0 bytes .../datatables/triangle_details_open.png | Bin 1130 -> 0 bytes .../static/intake/images/forward_disabled.png | Bin 1363 -> 0 bytes .../static/intake/images/forward_enabled.png | Bin 1380 -> 0 bytes .../intake/images/forward_enabled_hover.png | Bin 1379 -> 0 bytes intake/static/intake/images/sort_asc.png | Bin 1118 -> 0 bytes .../intake/images/sort_asc_disabled.png | Bin 1050 -> 0 bytes intake/static/intake/images/sort_both.png | Bin 1136 -> 0 bytes intake/static/intake/images/sort_desc.png | Bin 1127 -> 0 bytes .../intake/images/sort_desc_disabled.png | Bin 1045 -> 0 bytes .../static/intake/images/uu-logo-footer.svg | 788 ------------- intake/static/intake/images/uu-logo.svg | 329 ------ .../static/intake/images/yoda/yoda-kleur.png | Bin 26343 -> 0 bytes intake/static/intake/images/yoda/yoda-man.png | Bin 22272 -> 0 bytes .../intake/scripts/controllers/intake.js | 383 ------- .../intake/scripts/controllers/intake_tree.js | 66 -- .../static/intake/scripts/controllers/main.js | 15 - .../intake/scripts/controllers/reports.js | 9 - .../intake/scripts/dataTables.bootstrap.js | 185 --- .../dataTables.bootstrapPagination-3.js | 117 -- .../scripts/datatables/intake_overview.js | 153 --- .../datatables/intake_overview_assistant.js | 84 -- .../datatables/plugin_sort_on_image.js | 19 - .../intake/scripts/jquery.dataTables.min.js | 158 --- .../scripts/treetable/jquery.treetable.js | 650 ----------- .../templates/intake/dataset_detail_view.html | 104 -- intake/templates/intake/intake.html | 311 ----- intake/templates/intake/reports.html | 231 ---- .../intake/table_files_unrecognised.html | 41 - package.json | 1 - setup.cfg | 2 +- .../jquery-migrate-3.4.1.js | 1018 ----------------- .../jquery-migrate-3.4.1.min.js | 2 - user/user.py | 3 - 67 files changed, 2 insertions(+), 5681 deletions(-) delete mode 100644 intake/intake.py delete mode 100644 intake/static/intake/css/datatables.bootstrap.min.css delete mode 100755 intake/static/intake/css/intake.css delete mode 100644 intake/static/intake/css/jquery.dataTables.css delete mode 100644 intake/static/intake/css/treetable/jquery.treetable.css delete mode 100644 intake/static/intake/css/treetable/jquery.treetable.theme.default.css delete mode 100644 intake/static/intake/images/Thumbs.db delete mode 100644 intake/static/intake/images/ajax-loader.gif delete mode 100644 intake/static/intake/images/back_disabled.png delete mode 100644 intake/static/intake/images/back_enabled.png delete mode 100644 intake/static/intake/images/back_enabled_hover.png delete mode 100644 intake/static/intake/images/datatables/Sorting icons.psd delete mode 100644 intake/static/intake/images/datatables/back_disabled.png delete mode 100644 intake/static/intake/images/datatables/back_enabled.png delete mode 100644 intake/static/intake/images/datatables/back_enabled_hover.png delete mode 100644 intake/static/intake/images/datatables/details_close.gif delete mode 100644 intake/static/intake/images/datatables/details_open.gif delete mode 100644 intake/static/intake/images/datatables/favicon.ico delete mode 100644 intake/static/intake/images/datatables/forward_disabled.png delete mode 100644 intake/static/intake/images/datatables/forward_enabled.png delete mode 100644 intake/static/intake/images/datatables/forward_enabled_hover.png delete mode 100644 intake/static/intake/images/datatables/old_details_close.png delete mode 100644 intake/static/intake/images/datatables/old_details_open.png delete mode 100644 intake/static/intake/images/datatables/sort_asc.png delete mode 100644 intake/static/intake/images/datatables/sort_asc_disabled.png delete mode 100644 intake/static/intake/images/datatables/sort_both.png delete mode 100644 intake/static/intake/images/datatables/sort_desc.png delete mode 100644 intake/static/intake/images/datatables/sort_desc_disabled.png delete mode 100644 intake/static/intake/images/datatables/status_frozen.png delete mode 100644 intake/static/intake/images/datatables/status_locked.png delete mode 100644 intake/static/intake/images/datatables/status_scanned.png delete mode 100644 intake/static/intake/images/datatables/triangle_details_close.png delete mode 100644 intake/static/intake/images/datatables/triangle_details_open.png delete mode 100644 intake/static/intake/images/forward_disabled.png delete mode 100644 intake/static/intake/images/forward_enabled.png delete mode 100644 intake/static/intake/images/forward_enabled_hover.png delete mode 100644 intake/static/intake/images/sort_asc.png delete mode 100644 intake/static/intake/images/sort_asc_disabled.png delete mode 100644 intake/static/intake/images/sort_both.png delete mode 100644 intake/static/intake/images/sort_desc.png delete mode 100644 intake/static/intake/images/sort_desc_disabled.png delete mode 100644 intake/static/intake/images/uu-logo-footer.svg delete mode 100644 intake/static/intake/images/uu-logo.svg delete mode 100644 intake/static/intake/images/yoda/yoda-kleur.png delete mode 100644 intake/static/intake/images/yoda/yoda-man.png delete mode 100755 intake/static/intake/scripts/controllers/intake.js delete mode 100644 intake/static/intake/scripts/controllers/intake_tree.js delete mode 100644 intake/static/intake/scripts/controllers/main.js delete mode 100755 intake/static/intake/scripts/controllers/reports.js delete mode 100644 intake/static/intake/scripts/dataTables.bootstrap.js delete mode 100644 intake/static/intake/scripts/dataTables.bootstrapPagination-3.js delete mode 100644 intake/static/intake/scripts/datatables/intake_overview.js delete mode 100644 intake/static/intake/scripts/datatables/intake_overview_assistant.js delete mode 100644 intake/static/intake/scripts/datatables/plugin_sort_on_image.js delete mode 100644 intake/static/intake/scripts/jquery.dataTables.min.js delete mode 100644 intake/static/intake/scripts/treetable/jquery.treetable.js delete mode 100644 intake/templates/intake/dataset_detail_view.html delete mode 100644 intake/templates/intake/intake.html delete mode 100644 intake/templates/intake/reports.html delete mode 100644 intake/templates/intake/table_files_unrecognised.html delete mode 100644 static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.js delete mode 100644 static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.min.js diff --git a/app.py b/app.py index a2154adc..0666c81d 100644 --- a/app.py +++ b/app.py @@ -19,7 +19,6 @@ from fileviewer.fileviewer import fileviewer_bp from general.general import general_bp from group_manager.group_manager import group_manager_bp -from intake.intake import intake_bp from monitor import Monitor from open_search.open_search import open_search_bp from research.research import research_bp @@ -99,10 +98,6 @@ def load_admin_setting() -> Dict[str, Any]: app.config['modules'].append( {'name': 'Deposit', 'function': 'deposit_bp.index'} ) -if app.config.get('INTAKE_ENABLED'): - app.config['modules'].append( - {'name': 'Intake', 'function': 'intake_bp.index'} - ) if app.config.get('DATAREQUEST_ENABLED'): app.config['modules'].append( {'name': 'Datarequest', 'function': 'datarequest_bp.index'} @@ -153,8 +148,6 @@ def load_admin_setting() -> Dict[str, Any]: app.register_blueprint(deposit_bp, url_prefix='/deposit') if app.config.get('OPEN_SEARCH_ENABLED'): app.register_blueprint(open_search_bp, url_prefix='/open_search') - if app.config.get('INTAKE_ENABLED'): - app.register_blueprint(intake_bp, url_prefix='/intake') if app.config.get('DATAREQUEST_ENABLED'): app.register_blueprint(datarequest_bp, url_prefix='/datarequest/') diff --git a/group_manager/templates/group_manager/index.html b/group_manager/templates/group_manager/index.html index 25a2d57f..5b7843c5 100644 --- a/group_manager/templates/group_manager/index.html +++ b/group_manager/templates/group_manager/index.html @@ -107,15 +107,11 @@

Group manager

@@ -220,7 +216,7 @@

Group manager

- grp- + research-
diff --git a/intake/intake.py b/intake/intake.py deleted file mode 100644 index 983765d6..00000000 --- a/intake/intake.py +++ /dev/null @@ -1,311 +0,0 @@ -#!/usr/bin/env python3 - -__copyright__ = 'Copyright (c) 2021-2024, Utrecht University' -__license__ = 'GPLv3, see LICENSE' - -import time -from typing import Any, Dict - -from flask import ( - Blueprint, - g, - make_response, - render_template, - request, - Response, - session, -) - -import api - -intake_bp = Blueprint('intake_bp', __name__, - template_folder='templates', - static_folder='static/intake', - static_url_path='/assets') - - -@intake_bp.route('/', methods=['GET']) -def index() -> Response: - study_id = request.args.get('studyID') - study_folder = request.args.get('studyFolder') - alert_nr = request.args.get('alertNr') - if alert_nr is None or len(alert_nr) == 0: - alert_nr = '' - - studies = api.call('intake_list_studies')['data'] - - if study_id is None or len(study_id) == 0: - try: - study_id = session['study_id'] - except Exception: - # find a study from available studies. - for study in studies: - # Only take a study that is permitted - temp_permissions = get_intake_study_permissions(study) - if temp_permissions['manager'] or temp_permissions['assistant']: - study_id = study - break - # If not default study can be found - NO ACCESS - if study_id is None or len(study_id) == 0: - alert_nr = 100 # NO ACCESS - - # check whether user is part of the study-group but only of a study id has been found - # if not, stop access - qualified_study_id = "" - if alert_nr != 100: - permissions = get_intake_study_permissions(study_id) - - # determine whether group prefix is intake or grp-intake - qualified_study_id = permissions['group_path'] + study_id - - if not (permissions['manager'] or permissions['assistant']): - alert_nr = 100 # NO ACCESS - - if alert_nr == 100: - permissions = {} - intake_path = '' - valid_folders = [] - datasets = [] - total_dataset_files = 0 - data_erroneous_files = [] - total_file_count = 0 - study_folder = '' - full_path = '' - study_title = '' - else: - # Store in current session for purpose when study_id is missing in requests - session['study_id'] = study_id - - intake_path = '/' + g.irods.zone + '/home/' + qualified_study_id # permissions['group_path'] + study_id - - result = api.call('browse_collections', {'coll': intake_path, - 'sort_on': 'name', - 'sort_order': 'asc', - 'offset': 0, - 'limit': 1000, - 'space': 'Space.INTAKE'}) - - valid_folders = result['data']['items'] - - coll = intake_path - if study_folder: - coll += '/' + study_folder - - datasets = api.call('intake_list_datasets', {"coll": coll})['data'] - - # get the total of dataset files - total_dataset_files = 0 - for dataset in datasets: - total_dataset_files += dataset['objects'] - - data_erroneous_files = api.call('intake_list_unrecognized_files', {"coll": coll})['data'] - - total_file_count = api.call('intake_count_total_files', {"coll": coll})['data'] - - study_title = study_id - full_path = intake_path - if study_folder: - full_path += '/' + study_folder - study_title += '/' + study_folder - else: - study_folder = '' - - return render_template('/intake/intake.html', - activeModule='intake', - permissions=permissions, - studies=studies, - intakePath=intake_path, - alertNr=alert_nr, - selectableScanFolders=valid_folders, - dataSets=datasets, - totalDatasetFiles=total_dataset_files, - dataErroneousFiles=data_erroneous_files, - totalErrorCount=len(data_erroneous_files), - totalFileCount=total_file_count, - study_id=study_id, - qualified_study_id=qualified_study_id, - study_folder=study_folder, - full_path=full_path, - title='Study ' + study_title) - - -def get_intake_study_permissions(study_id: str) -> Dict[str, Any]: - # Two types of groupnames 1) grp-intake- and 2) intake- - group_path = 'grp-intake-' - assistant_access = False - if api.call('group_user_is_member', - {'username': g.user, 'group_name': 'grp-intake-' + study_id})['data']: - assistant_access = True - elif api.call('group_user_is_member', - {'username': g.user, 'group_name': 'intake-' + study_id})['data']: - assistant_access = True - group_path = 'intake-' - - return {'assistant': assistant_access, - 'group_path': group_path, - 'manager': api.call('group_user_is_member', - {'username': g.user, 'group_name': 'grp-datamanager-' + study_id})['data']} - - -@intake_bp.route('getDatasetDetailView', methods=['POST']) -def get_dataset_detail_view() -> Response: - path = request.form.get('path') - tbl_id = request.form.get('tbl_id') - dataset_id = request.form.get('datasetID') - - result = api.call('intake_dataset_get_details', - {"coll": path, "dataset_id": dataset_id}) - - path_items = result['data']['files'] - - datasetErrors = result['data']['dataset_errors'] - datasetWarnings = result['data']['dataset_warnings'] - datasetComments = result['data']['comments'] - - list_comments = [] - for comment in datasetComments: - parts = comment.split(':') - list_comments.append({'name': parts[0], - 'time': time.strftime('%Y/%m/%d %H:%M:%S', time.localtime(int(parts[1]))), - 'comment': parts[2]}) - scan_data = result['data']['scanned'].split(':') - scan_data[1] = time.strftime('%Y/%m/%d %H:%M:%S', time.localtime(int(scan_data[1]))) - - table_definition = render_template('intake/dataset_detail_view.html', - path_nodes_ordered=sorted(path_items.keys()), - pathItems=path_items, - tbl_id=tbl_id, - datasetPath=path, - scannedByWhen=scan_data, - datasetErrors=datasetErrors, - datasetWarnings=datasetWarnings, - datasetComments=list_comments, - datasetID=dataset_id) - - return {'output': table_definition, - 'hasError': False} - - -@intake_bp.route('download', methods=['GET']) -def export() -> Response: - # Datamanager only! - study_id = request.args.get('studyID') - - permissions = get_intake_study_permissions(study_id) - if not permissions['manager']: - content = '' - output = make_response(content) - size = 0 - - output.headers['Content-Disposition'] = 'attachment; filename="no_access_to_study.csv"' - output.headers['Content-Type'] = 'application/octet' - output.headers['Content-Length'] = size - - return output - - result = api.call('intake_report_export_study_data', {'study_id': study_id}) - - export_data = result['data'] - - content = '"Study",' - content += '"Wave",' - content += '"ExpType",' - content += '"Pseudo",' - content += '"Version",' - content += '"ToVaultDay",' - content += '"ToVaultMonth",' - content += '"ToVaultYear",' - content += '"DatasetSize",' - content += '"DatasetFiles"' - content += "\r\n" - - for data_row in export_data: - data = export_data[data_row] - content += "'" + study_id + "'," - content += "'" + data['wave'] + "'," - content += "'" + data['experiment_type'] + "'," - content += "'" + data['pseudocode'] + "'," - content += "'" + data['version'] + "'," - try: - created = time.localtime(int(data['dataset_date_created'])) - content += "'" + time.strftime('%d', created) + "'," - content += "'" + time.strftime('%m', created) + "'," - content += "'" + time.strftime('%Y', created) + "'," - except Exception: - content += "''," - content += "''," - content += "''," - - content += str(data['totalFileSize']) + "'," - content += str(data['totalFiles']) + "'," - content += "\r\n" - - output = make_response(content) - size = len(content) - - output.headers['Content-Disposition'] = f'attachment; filename="{study_id}.csv"' - output.headers['Content-Type'] = 'application/octet' - output.headers['Content-Length'] = size - - return output - - -# public function index($studyID=null) -@intake_bp.route('reports') -@intake_bp.route('/reports/') -def reports() -> Response: - access_denied = True - study_id = request.args.get('studyID') - - studies = api.call('intake_list_studies')['data'] - - if study_id is None or len(study_id) == 0: - try: - study_id = session['study_id'] - except Exception: - # find a study from available studies. - for study in studies: - # Only take a study that is permitted - temp_permissions = get_intake_study_permissions(study) - if temp_permissions['manager']: - study_id = study - break - - # check whether user is part of the study-group. - # if not, stop access - permissions = get_intake_study_permissions(study_id) - if permissions['manager']: - access_denied = False - - intake_path = '' - counts = {} - aggregated_info = {} - title_translate = {} - - if not access_denied: - # Wat wordt hiermee gedaan dan?? - intake_path = '/' + g.irods.zone + '/home/grp-vault-' + study_id - - counts = api.call('intake_report_vault_dataset_counts_per_study', {'study_id': study_id})['data'] - - aggregated_info = api.call('intake_report_vault_aggregated_info', {'study_id': study_id})['data'] - - # Translation table for the frontend - title_translate = {'totalDatasets': 'Total datasets', - 'totalFiles': 'Total files', - 'totalFileSize': 'Total file size', - 'totalFileSizeMonthGrowth': 'File size growth in a month', - 'datasetsMonthGrowth': 'Datasets growth in a month', - 'distinctPseudoCodes': 'Pseudocodes'} - - return render_template('/intake/reports.html', - access_denied=access_denied, - activeModule='intake', - studies=studies, - study_id=study_id, - studyFolder='', - intakePath=intake_path, - datasetTypeCounts=counts, - aggregatedInfo=aggregated_info, - title_translate=title_translate, - title='VAULT: Study ' + study_id) diff --git a/intake/static/intake/css/datatables.bootstrap.min.css b/intake/static/intake/css/datatables.bootstrap.min.css deleted file mode 100644 index 14781d73..00000000 --- a/intake/static/intake/css/datatables.bootstrap.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! - * angular-datatables - v0.4.0 - * https://github.com/l-lin/angular-datatables - * License: MIT - */ - -div.dataTables_length label{font-weight:400;float:left;text-align:left}div.dataTables_length select{width:75px}div.dataTables_filter label{font-weight:400;float:right}div.dataTables_filter input{width:16em}div.dataTables_info{padding-top:8px}div.dataTables_paginate{float:right;margin:0}div.dataTables_paginate ul.pagination{margin:2px}table.table{clear:both;margin-top:6px!important;margin-bottom:6px!important;max-width:none!important}table.table thead .sorting,table.table thead .sorting_asc,table.table thead .sorting_asc_disabled,table.table thead .sorting_desc,table.table thead .sorting_desc_disabled{cursor:pointer}table.table thead .sorting:before{content:' ';position:relative;left:-5px}table.table thead .sorting_desc:before{content:"\25BE";padding-right:5px}table.table thead .sorting_asc:before{content:"\25B4";padding-right:5px}table.dataTable th:active{outline:0}.dataTables_wrapper .row{margin-top:20px}div.dataTables_scrollHead table{margin-bottom:0!important;border-bottom-left-radius:0;border-bottom-right-radius:0}div.dataTables_scrollHead table thead tr:last-child td:first-child,div.dataTables_scrollHead table thead tr:last-child th:first-child{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.dataTables_scrollBody table{border-top:0;margin-bottom:0!important}div.dataTables_scrollBody tbody tr:first-child td,div.dataTables_scrollBody tbody tr:first-child th,div.dataTables_scrollFoot table{border-top:0}table.DTTT_selectable tbody tr{cursor:pointer}div.DTTT .btn{color:#333!important}div.DTTT .btn:hover{text-decoration:none!important}ul.DTTT_dropdown.dropdown-menu{z-index:2003}ul.DTTT_dropdown.dropdown-menu a{color:#333!important}ul.DTTT_dropdown.dropdown-menu li{position:relative}ul.DTTT_dropdown.dropdown-menu li:hover a{background-color:#08c;color:#fff!important}div.DTTT_collection_background{z-index:2002}div.DTTT_print_info.modal{height:150px;margin-top:-75px;text-align:center}div.DTTT_print_info h6{font-weight:400;font-size:28px;line-height:28px;margin:1em}div.DTTT_print_info p{font-size:14px;line-height:20px}div.DTFC_LeftFootWrapper table,div.DTFC_LeftHeadWrapper table,div.DTFC_RightFootWrapper table,div.DTFC_RightHeadWrapper table,table.DTFC_Cloned tr.even{background-color:#fff}div.DTFC_LeftHeadWrapper table,div.DTFC_RightHeadWrapper table{margin-bottom:0!important;border-top-right-radius:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.DTFC_LeftHeadWrapper table thead tr:last-child td:first-child,div.DTFC_LeftHeadWrapper table thead tr:last-child th:first-child,div.DTFC_RightHeadWrapper table thead tr:last-child td:first-child,div.DTFC_RightHeadWrapper table thead tr:last-child th:first-child{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.DTFC_LeftBodyWrapper table,div.DTFC_RightBodyWrapper table{border-top:0;margin-bottom:0!important}div.DTFC_LeftBodyWrapper tbody tr:first-child td,div.DTFC_LeftBodyWrapper tbody tr:first-child th,div.DTFC_LeftFootWrapper table,div.DTFC_RightBodyWrapper tbody tr:first-child td,div.DTFC_RightBodyWrapper tbody tr:first-child th,div.DTFC_RightFootWrapper table{border-top:0}ul.ColVis_collection{width:auto!important} \ No newline at end of file diff --git a/intake/static/intake/css/intake.css b/intake/static/intake/css/intake.css deleted file mode 100755 index 18294f98..00000000 --- a/intake/static/intake/css/intake.css +++ /dev/null @@ -1,83 +0,0 @@ -#dataset_detail_view { - padding: 10px; - background:#F0E68C; -} -.dropdown-menu { - width:300px; - padding:5px; -} - -#select-study,#select-study-folder tbody tr { - cursor:pointer; -} -table.table-outside-borders { - border-style: solid; - border-width: 1px; - border-color: #c0c0c0; -} -table.tbl-fullwidth { - width:100%; -} -td.details-control { - background: url('../images/datatables/triangle_details_open.png') no-repeat center center; - background-size: 20px 20px; - width:20px; - height:20px; - cursor: pointer; -} -tr.shown td.details-control { - background: url('../images/datatables/triangle_details_close.png') no-repeat center center; - background-size: 20px 20px; - width:20px; - height:20px; - cursor: pointer; -} - -div.datasetstatus_frozen{ - background: url('../images/datatables/status_frozen.png') no-repeat center center; - background-size: 20px 20px; - width:20px; - height:20px; -} -div.datasetstatus_locked{ - background: url('../images/datatables/status_locked.png') no-repeat center center; - background-size: 20px 20px; - width:20px; - height:20px; -} -div.datasetstatus_scanned{ - background: url('../images/datatables/status_scanned.png') no-repeat center center; - background-size: 20px 20px; - width:20px; - height:20px; -} - -#datatable tbody tr.detailrow { - cursor:pointer; -} -#datatable_unrecognised tbody tr { - cursor:pointer; -} - -.ellipseDivText { - overflow:hidden; - text-overflow-multiline:ellipsis; -} - -.select-generic-iframe { - height:350px; width:99%; -} - -.w5px { width: 5px; } -.w10px { width: 10px; } -.w20px { width: 20px; } -.w30px { width: 30px; } -.w50px { width: 50px; } -.w80px { width: 80px; } -.w100px { width: 100px; } -.w135px { width: 135px; } -.w150px { width: 150px; } -.w200px { width: 250px; } -.w250px { width: 250px; } -.w300px { width: 300px; } -.w500px { width: 500px; } diff --git a/intake/static/intake/css/jquery.dataTables.css b/intake/static/intake/css/jquery.dataTables.css deleted file mode 100644 index 4e6fbe38..00000000 --- a/intake/static/intake/css/jquery.dataTables.css +++ /dev/null @@ -1,476 +0,0 @@ -/* - * Table styles - */ -table.dataTable { - width: 100%; - margin: 0 auto; - clear: both; - border-collapse: separate; - border-spacing: 0; - /* - * Header and footer styles - */ - /* - * Body styles - */ -} -table.dataTable thead th, -table.dataTable tfoot th { - font-weight: bold; -} -table.dataTable thead th, -table.dataTable thead td { - padding: 10px 18px; - border-bottom: 1px solid #111111; -} -table.dataTable thead th:active, -table.dataTable thead td:active { - outline: none; -} -table.dataTable tfoot th, -table.dataTable tfoot td { - padding: 10px 18px 6px 18px; - border-top: 1px solid #111111; -} -table.dataTable thead .sorting_asc, -table.dataTable thead .sorting_desc, -table.dataTable thead .sorting { - cursor: pointer; - *cursor: hand; -} -table.dataTable thead .sorting { - background: url("../images/sort_both.png") no-repeat center right; -} -table.dataTable thead .sorting_asc { - background: url("../images/sort_asc.png") no-repeat center right; -} -table.dataTable thead .sorting_desc { - background: url("../images/sort_desc.png") no-repeat center right; -} -table.dataTable thead .sorting_asc_disabled { - background: url("../images/sort_asc_disabled.png") no-repeat center right; -} -table.dataTable thead .sorting_desc_disabled { - background: url("../images/sort_desc_disabled.png") no-repeat center right; -} -table.dataTable tbody tr { - background-color: white; -} -table.dataTable tbody tr.selected { - background-color: #b0bed9; -} -table.dataTable tbody th, -table.dataTable tbody td { - padding: 8px 10px; -} -table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td { - border-top: 1px solid #dddddd; -} -table.dataTable.row-border tbody tr:first-child th, -table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th, -table.dataTable.display tbody tr:first-child td { - border-top: none; -} -table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td { - border-top: 1px solid #dddddd; - border-right: 1px solid #dddddd; -} -table.dataTable.cell-border tbody tr th:first-child, -table.dataTable.cell-border tbody tr td:first-child { - border-left: 1px solid #dddddd; -} -table.dataTable.cell-border tbody tr:first-child th, -table.dataTable.cell-border tbody tr:first-child td { - border-top: none; -} -table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd { - background-color: #f9f9f9; -} -table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected { - background-color: #abb9d3; -} -table.dataTable.hover tbody tr:hover, -table.dataTable.hover tbody tr.odd:hover, -table.dataTable.hover tbody tr.even:hover, table.dataTable.display tbody tr:hover, -table.dataTable.display tbody tr.odd:hover, -table.dataTable.display tbody tr.even:hover { - background-color: whitesmoke; -} -table.dataTable.hover tbody tr:hover.selected, -table.dataTable.hover tbody tr.odd:hover.selected, -table.dataTable.hover tbody tr.even:hover.selected, table.dataTable.display tbody tr:hover.selected, -table.dataTable.display tbody tr.odd:hover.selected, -table.dataTable.display tbody tr.even:hover.selected { - background-color: #a9b7d1; -} -table.dataTable.order-column tbody tr > .sorting_1, -table.dataTable.order-column tbody tr > .sorting_2, -table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1, -table.dataTable.display tbody tr > .sorting_2, -table.dataTable.display tbody tr > .sorting_3 { - background-color: #f9f9f9; -} -table.dataTable.order-column tbody tr.selected > .sorting_1, -table.dataTable.order-column tbody tr.selected > .sorting_2, -table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1, -table.dataTable.display tbody tr.selected > .sorting_2, -table.dataTable.display tbody tr.selected > .sorting_3 { - background-color: #acbad4; -} -table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 { - background-color: #f1f1f1; -} -table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 { - background-color: #f3f3f3; -} -table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 { - background-color: whitesmoke; -} -table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 { - background-color: #a6b3cd; -} -table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 { - background-color: #a7b5ce; -} -table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 { - background-color: #a9b6d0; -} -table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 { - background-color: #f9f9f9; -} -table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 { - background-color: #fbfbfb; -} -table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 { - background-color: #fdfdfd; -} -table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 { - background-color: #acbad4; -} -table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 { - background-color: #adbbd6; -} -table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 { - background-color: #afbdd8; -} -table.dataTable.display tbody tr:hover > .sorting_1, -table.dataTable.display tbody tr.odd:hover > .sorting_1, -table.dataTable.display tbody tr.even:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1, -table.dataTable.order-column.hover tbody tr.odd:hover > .sorting_1, -table.dataTable.order-column.hover tbody tr.even:hover > .sorting_1 { - background-color: #eaeaea; -} -table.dataTable.display tbody tr:hover > .sorting_2, -table.dataTable.display tbody tr.odd:hover > .sorting_2, -table.dataTable.display tbody tr.even:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2, -table.dataTable.order-column.hover tbody tr.odd:hover > .sorting_2, -table.dataTable.order-column.hover tbody tr.even:hover > .sorting_2 { - background-color: #ebebeb; -} -table.dataTable.display tbody tr:hover > .sorting_3, -table.dataTable.display tbody tr.odd:hover > .sorting_3, -table.dataTable.display tbody tr.even:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3, -table.dataTable.order-column.hover tbody tr.odd:hover > .sorting_3, -table.dataTable.order-column.hover tbody tr.even:hover > .sorting_3 { - background-color: #eeeeee; -} -table.dataTable.display tbody tr:hover.selected > .sorting_1, -table.dataTable.display tbody tr.odd:hover.selected > .sorting_1, -table.dataTable.display tbody tr.even:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1, -table.dataTable.order-column.hover tbody tr.odd:hover.selected > .sorting_1, -table.dataTable.order-column.hover tbody tr.even:hover.selected > .sorting_1 { - background-color: #a1aec7; -} -table.dataTable.display tbody tr:hover.selected > .sorting_2, -table.dataTable.display tbody tr.odd:hover.selected > .sorting_2, -table.dataTable.display tbody tr.even:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2, -table.dataTable.order-column.hover tbody tr.odd:hover.selected > .sorting_2, -table.dataTable.order-column.hover tbody tr.even:hover.selected > .sorting_2 { - background-color: #a2afc8; -} -table.dataTable.display tbody tr:hover.selected > .sorting_3, -table.dataTable.display tbody tr.odd:hover.selected > .sorting_3, -table.dataTable.display tbody tr.even:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3, -table.dataTable.order-column.hover tbody tr.odd:hover.selected > .sorting_3, -table.dataTable.order-column.hover tbody tr.even:hover.selected > .sorting_3 { - background-color: #a4b2cb; -} -table.dataTable.no-footer { - border-bottom: 1px solid #111111; -} -table.dataTable.nowrap th, table.dataTable.nowrap td { - white-space: nowrap; -} -table.dataTable.compact thead th, -table.dataTable.compact thead td { - padding: 5px 9px; -} -table.dataTable.compact tfoot th, -table.dataTable.compact tfoot td { - padding: 5px 9px 3px 9px; -} -table.dataTable.compact tbody th, -table.dataTable.compact tbody td { - padding: 4px 5px; -} -table.dataTable th.dt-left, -table.dataTable td.dt-left { - text-align: left; -} -table.dataTable th.dt-center, -table.dataTable td.dt-center, -table.dataTable td.dataTables_empty { - text-align: center; -} -table.dataTable th.dt-right, -table.dataTable td.dt-right { - text-align: right; -} -table.dataTable th.dt-justify, -table.dataTable td.dt-justify { - text-align: justify; -} -table.dataTable th.dt-nowrap, -table.dataTable td.dt-nowrap { - white-space: nowrap; -} -table.dataTable thead th.dt-head-left, -table.dataTable thead td.dt-head-left, -table.dataTable tfoot th.dt-head-left, -table.dataTable tfoot td.dt-head-left { - text-align: left; -} -table.dataTable thead th.dt-head-center, -table.dataTable thead td.dt-head-center, -table.dataTable tfoot th.dt-head-center, -table.dataTable tfoot td.dt-head-center { - text-align: center; -} -table.dataTable thead th.dt-head-right, -table.dataTable thead td.dt-head-right, -table.dataTable tfoot th.dt-head-right, -table.dataTable tfoot td.dt-head-right { - text-align: right; -} -table.dataTable thead th.dt-head-justify, -table.dataTable thead td.dt-head-justify, -table.dataTable tfoot th.dt-head-justify, -table.dataTable tfoot td.dt-head-justify { - text-align: justify; -} -table.dataTable thead th.dt-head-nowrap, -table.dataTable thead td.dt-head-nowrap, -table.dataTable tfoot th.dt-head-nowrap, -table.dataTable tfoot td.dt-head-nowrap { - white-space: nowrap; -} -table.dataTable tbody th.dt-body-left, -table.dataTable tbody td.dt-body-left { - text-align: left; -} -table.dataTable tbody th.dt-body-center, -table.dataTable tbody td.dt-body-center { - text-align: center; -} -table.dataTable tbody th.dt-body-right, -table.dataTable tbody td.dt-body-right { - text-align: right; -} -table.dataTable tbody th.dt-body-justify, -table.dataTable tbody td.dt-body-justify { - text-align: justify; -} -table.dataTable tbody th.dt-body-nowrap, -table.dataTable tbody td.dt-body-nowrap { - white-space: nowrap; -} - -table.dataTable, -table.dataTable th, -table.dataTable td { - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; -} - -/* - * Control feature layout - */ -.dataTables_wrapper { - position: relative; - clear: both; - *zoom: 1; - zoom: 1; -} -.dataTables_wrapper .dataTables_length { - float: left; -} -.dataTables_wrapper .dataTables_filter { - float: right; - text-align: right; -} -.dataTables_wrapper .dataTables_filter input { - margin-left: 0.5em; -} -.dataTables_wrapper .dataTables_info { - clear: both; - float: left; - padding-top: 0.755em; -} -.dataTables_wrapper .dataTables_paginate { - float: right; - text-align: right; - padding-top: 0.25em; -} -.dataTables_wrapper .dataTables_paginate .paginate_button { - box-sizing: border-box; - display: inline-block; - min-width: 1.5em; - padding: 0.5em 1em; - margin-left: 2px; - text-align: center; - text-decoration: none !important; - cursor: pointer; - *cursor: hand; - color: #333333 !important; - border: 1px solid transparent; -} -.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { - color: #333333 !important; - border: 1px solid #cacaca; - background-color: white; - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, gainsboro)); - /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, white 0%, gainsboro 100%); - /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(top, white 0%, gainsboro 100%); - /* FF3.6+ */ - background: -ms-linear-gradient(top, white 0%, gainsboro 100%); - /* IE10+ */ - background: -o-linear-gradient(top, white 0%, gainsboro 100%); - /* Opera 11.10+ */ - background: linear-gradient(to bottom, white 0%, gainsboro 100%); - /* W3C */ -} -.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active { - cursor: default; - color: #666 !important; - border: 1px solid transparent; - background: transparent; - box-shadow: none; -} -.dataTables_wrapper .dataTables_paginate .paginate_button:hover { - color: white !important; - border: 1px solid #111111; - background-color: #585858; - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111111)); - /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #585858 0%, #111111 100%); - /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(top, #585858 0%, #111111 100%); - /* FF3.6+ */ - background: -ms-linear-gradient(top, #585858 0%, #111111 100%); - /* IE10+ */ - background: -o-linear-gradient(top, #585858 0%, #111111 100%); - /* Opera 11.10+ */ - background: linear-gradient(to bottom, #585858 0%, #111111 100%); - /* W3C */ -} -.dataTables_wrapper .dataTables_paginate .paginate_button:active { - outline: none; - background-color: #2b2b2b; - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c)); - /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); - /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); - /* FF3.6+ */ - background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); - /* IE10+ */ - background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); - /* Opera 11.10+ */ - background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%); - /* W3C */ - box-shadow: inset 0 0 3px #111; -} -.dataTables_wrapper .dataTables_processing { - position: absolute; - top: 50%; - left: 50%; - width: 100%; - height: 40px; - margin-left: -50%; - margin-top: -25px; - padding-top: 20px; - text-align: center; - font-size: 1.2em; - background-color: white; - background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0))); - /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); - /* Chrome10+,Safari5.1+ */ - background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); - /* FF3.6+ */ - background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); - /* IE10+ */ - background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); - /* Opera 11.10+ */ - background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); - /* W3C */ -} -.dataTables_wrapper .dataTables_length, -.dataTables_wrapper .dataTables_filter, -.dataTables_wrapper .dataTables_info, -.dataTables_wrapper .dataTables_processing, -.dataTables_wrapper .dataTables_paginate { - color: #333333; -} -.dataTables_wrapper .dataTables_scroll { - clear: both; -} -.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody { - *margin-top: -1px; - -webkit-overflow-scrolling: touch; -} -.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th > div.dataTables_sizing, -.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td > div.dataTables_sizing { - height: 0; - overflow: hidden; - margin: 0 !important; - padding: 0 !important; -} -.dataTables_wrapper.no-footer .dataTables_scrollBody { - border-bottom: 1px solid #111111; -} -.dataTables_wrapper.no-footer div.dataTables_scrollHead table, -.dataTables_wrapper.no-footer div.dataTables_scrollBody table { - border-bottom: none; -} -.dataTables_wrapper:after { - visibility: hidden; - display: block; - content: ""; - clear: both; - height: 0; -} - -@media screen and (max-width: 767px) { - .dataTables_wrapper .dataTables_info, - .dataTables_wrapper .dataTables_paginate { - float: none; - text-align: center; - } - .dataTables_wrapper .dataTables_paginate { - margin-top: 0.5em; - } -} -@media screen and (max-width: 640px) { - .dataTables_wrapper .dataTables_length, - .dataTables_wrapper .dataTables_filter { - float: none; - text-align: center; - } - .dataTables_wrapper .dataTables_filter { - margin-top: 0.5em; - } -} diff --git a/intake/static/intake/css/treetable/jquery.treetable.css b/intake/static/intake/css/treetable/jquery.treetable.css deleted file mode 100644 index 4e95bfd3..00000000 --- a/intake/static/intake/css/treetable/jquery.treetable.css +++ /dev/null @@ -1,28 +0,0 @@ -table.treetable span.indenter { - display: inline-block; - margin: 0; - padding: 0; - text-align: right; - - /* Disable text selection of nodes (for better D&D UX) */ - user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -o-user-select: none; - -webkit-user-select: none; - - /* Force content-box box model for indenter (Bootstrap compatibility) */ - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; - - width: 19px; -} - -table.treetable span.indenter a { - background-position: left center; - background-repeat: no-repeat; - display: inline-block; - text-decoration: none; - width: 19px; -} diff --git a/intake/static/intake/css/treetable/jquery.treetable.theme.default.css b/intake/static/intake/css/treetable/jquery.treetable.theme.default.css deleted file mode 100644 index a01d6361..00000000 --- a/intake/static/intake/css/treetable/jquery.treetable.theme.default.css +++ /dev/null @@ -1,96 +0,0 @@ -/* -table.treetable { - border: 1px solid #888; - border-collapse: collapse; - font-size: .8em; - line-height: 1; - margin: .6em 0 1.8em 0; - width: 100%; -} - -table.treetable caption { - font-size: .9em; - font-weight: bold; - margin-bottom: .2em; -} - -table.treetable thead { - background: #aaa url(data:image/png;base64,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) repeat-x top left; - font-size: .9em; -} - -table.treetable thead tr th { - border: 1px solid #888; - font-weight: normal; - padding: .3em 1em .1em 1em; - text-align: left; -} - -table.treetable tbody tr td { - cursor: default; - padding: .3em 1em; -} - -table.treetable span { - background-position: center left; - background-repeat: no-repeat; - padding: .2em 0 .2em 1.5em; -} -*/ - -table.treetable span.file { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAADoSURBVBgZBcExblNBGAbA2ceegTRBuIKOgiihSZNTcC5LUHAihNJR0kGKCDcYJY6D3/77MdOinTvzAgCw8ysThIvn/VojIyMjIyPP+bS1sUQIV2s95pBDDvmbP/mdkft83tpYguZq5Jh/OeaYh+yzy8hTHvNlaxNNczm+la9OTlar1UdA/+C2A4trRCnD3jS8BB1obq2Gk6GU6QbQAS4BUaYSQAf4bhhKKTFdAzrAOwAxEUAH+KEM01SY3gM6wBsEAQB0gJ+maZoC3gI6iPYaAIBJsiRmHU0AALOeFC3aK2cWAACUXe7+AwO0lc9eTHYTAAAAAElFTkSuQmCC); -} - -table.treetable span.folder { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGrSURBVDjLxZO7ihRBFIa/6u0ZW7GHBUV0UQQTZzd3QdhMQxOfwMRXEANBMNQX0MzAzFAwEzHwARbNFDdwEd31Mj3X7a6uOr9BtzNjYjKBJ6nicP7v3KqcJFaxhBVtZUAK8OHlld2st7Xl3DJPVONP+zEUV4HqL5UDYHr5xvuQAjgl/Qs7TzvOOVAjxjlC+ePSwe6DfbVegLVuT4r14eTr6zvA8xSAoBLzx6pvj4l+DZIezuVkG9fY2H7YRQIMZIBwycmzH1/s3F8AapfIPNF3kQk7+kw9PWBy+IZOdg5Ug3mkAATy/t0usovzGeCUWTjCz0B+Sj0ekfdvkZ3abBv+U4GaCtJ1iEm6ANQJ6fEzrG/engcKw/wXQvEKxSEKQxRGKE7Izt+DSiwBJMUSm71rguMYhQKrBygOIRStf4TiFFRBvbRGKiQLWP29yRSHKBTtfdBmHs0BUpgvtgF4yRFR+NUKi0XZcYjCeCG2smkzLAHkbRBmP0/Uk26O5YnUActBp1GsAI+S5nRJJJal5K1aAMrq0d6Tm9uI6zjyf75dAe6tx/SsWeD//o2/Ab6IH3/h25pOAAAAAElFTkSuQmCC); -} - - - -table.treetable tr.collapsed span.indenter a { - background-image: url(data:image/png;base64,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); -} - -table.treetable tr.expanded span.indenter a { - background-image: url(data:image/png;base64,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); -} - -/* - -table.treetable tr.branch { - background-color: #f9f9f9; -} - -table.treetable tr.selected { - background-color: #3875d7; - color: #fff; -} - -table.treetable tr span.indenter a { - outline: none; */ -/* Expander shows outline after upgrading to 3.0 (#141) *//* - -} - -table.treetable tr.collapsed.selected span.indenter a { - background-image: url(data:image/png;base64,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); -} - -table.treetable tr.expanded.selected span.indenter a { - background-image: url(data:image/png;base64,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); -} - -table.treetable tr.accept { - background-color: #a3bce4; - color: #fff -} - -table.treetable tr.collapsed.accept td span.indenter a { - background-image: url(data:image/x-png;base64,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); -} - -table.treetable tr.expanded.accept td span.indenter a { - background-image: url(data:image/x-png;base64,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); -} -*/ diff --git a/intake/static/intake/images/Thumbs.db b/intake/static/intake/images/Thumbs.db deleted file mode 100644 index 514fd18d5ceb75eaf13155041e6ab8d0e7e80220..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3584 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 ZfT6u;&2Oo-XD5RSIZszVmvv4FO#nm}^+Nyv diff --git a/intake/static/intake/images/back_enabled.png b/intake/static/intake/images/back_enabled.png deleted file mode 100644 index c608682b04a6d9b8002602450c8ef7e80ebba099..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1379 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVin+1c5}%-q<}$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1ObbUQklVEdbi=l3J8mmYU*Ll%J~r_Oewb7Ppv~yBe68 zyO`lL52`l>w_A*G>eUB2MjsThND&Pa0;V1i6P|2=9C*S{%>$EaktaVzQ1|Nr*PTN#9zMHxeRlNl-}v#d8N^Zk>0_uB7B{#OES8f>#2yG~0qw!L6p zdFucF|1%kW<~W?`S<}!e5q#_SzEeiVo81hJjGh}A8F|(J{8J?#FoV5gKjTM#g@4`` zHat7G{ZGytn}0n$K9W8@XQml^^p~IC#Pg_K>J#_+(?*}aZPd`ZZNa#A3a7~tW{o3_ zI{&|(mY(2PV%myRe9%s|Nr;*;U>8s5-)SkmAo$(Keu+yr%y+}MlE>zy+BR9?SIdWBY}H< zKKU5g_O$y^9OKN@zGsEyW<{&Edwac(+`RcS*M!N;4lBR&3)I`!79H%>{JYJ#JU4sR zw=W-e8rT2-_sjK!ftX42KgY{w-6eiM*mqC=xu5>dtj80wm*z`6(^6Ws=-8Pfr#M2- zH|Sq%;`zb5)KTvzU)R6$^W*Do?c4e6>`&v<`V~L7?ymp$=Mn1__Wu)kQ(K;TCm0xpn=Pl3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVi#&A{2f&C=D-$=KD<(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1O$kUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnrq&G!Lpb z1-DyVaO%|uIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@io@8}5n}LDxvZsq#&7*Qma&&|D2p_oRXCd37) zY)8(V;EL!lR8{!YrXwuuEuySktariS<$U}5@0hthGki2x_{Vvqo>S_XblJrDt*y7` zPn>AToH0Sw=g;r$;tI__7PkF4^xDY!x~Ps)lA51GcnTBmM+UA!h136k{gg`)kQbFq_VoBPIz)-gPOY!2f65f}=7PcDED2?Ugq;l&g-#qfGNQQhO_+II&v(YRhj*tM|Nr;*pX&(& zF_Y$hj+f86OZ@)!^=7=>-T3-YSLKUdZuf3aZ4YHF;C{AO_%40X!?e|-Fvdj7ri>D1+zvG8V_^em6og*g*a z*EjxPy&}Hf@!5mZjQ6qphxS*AMabZmhao`qBLJ(pzsNq?Pf|62BSCWcgaLqBHCE&EOUv}>Xi$*(!wu`FiTD>VJ z{+AE7#EbO0ocN&`rQ%YHimuZaPq5Mz69!ajCydc5b@9D(1=$T*4MvNRwrfNUMuW+g z)sPdf(V461EPydOEnY-e>|=7`WvP->Ns2@wjn5T`M51h~t|qHoUF4F4R8D-I-EPTB zORKN1Ppy}wnys~I5~Wg^CYGj2r76IXVjFL=YZ_8awl0hkw;nZZ(^~ZwyWVUPVZEAa zv%{VfACEKgTuc#lT2DR}ht)uG(P`6Y18t;Dc3T=0GR>nLWV3bJtQxb`sIlj2EEa=a ztHHUXjWg*|NmWxVb!NNSR%fGR{uJrSU2qsXEr$0{>^FZqQgf#WvYoIcv?v zG$25c#lA%bWR}WGYwTugrP*xA&BtvbDsvZ9q^gjLhU!f^bGI#2 zx!pT4Hfx|&50)W)DOZx6b{o#C;)FJ=oVJ+_4&3*0B$)~ zF$4*~fLF+prOM1?nOKr6lPDl4lQX0cWKzI^9=R9-@XB#I1LzQB=`v}rf^>;GQ!SAw z)Y8n1LTRB?kzbUNAum)aRbsg$-)&)^lDUfgmyJ<$gZ?glfGM~80mf#P=^JRnFtr}~ zi4C`{M46p-M}n7;o9V;vCg??IDX20V%+?Bc+R@nYh%PTwOKu;F$ubq0>B;G0Wu}JT!^AScXGj>H^kgh0Co!}rv=(3>228plLrh|5O@N^-A%@nM%fL5q4Ezu) zajXDNh;d#r@Dv>5Tx8%uI0jjWi7fa}x+EQ_IEK@OP-$z z*2q+*H+%AKvYtw%9JQGGgG9g;Kq04yQ7|By$z-Xl#URGqDo{%8e~E?WP!UC(Ew}Fc$bb}2q$QFIthf3 zj$(9lAZdI~lu3tr(ha0sZ9M6Yqz;!zI+(-|xwHsK8cv;Jo+Rc}slamzl|>{k6P{v} zR#O8M1H?R+6oXkZZ@vd3C910+cJpKqOiD9`=)4AL1T}_w-RWYV#pF9toX&rThVv#S zL(qzBl49YU5Mu`d60DejTnb-|eQ^zNt?&umFv1f=FxX~*W92cy)f%{M5o&Iowm8YU z0uh#S$zYtxVKBfApYaW<*4XF)8Y5jOPZp!{+B!EKr+GFw4olmH82Z~FMfv2z zB{V=sLEw`_iP}pyzt(DYSbR`CvsDjgk7<*`2r|OL3alN@2?7q%p&EzX+=n*NRyc~P z0|crZZ=qex0)`o5Fr~y;D}vjDu0I>j54#NSGA?c!Ured3*4;P^4^LyTS88f~xWcqF z$k7e<5?gU)Y5!_Cvx}L7+-M)>;5xH)LcT#?>$X%lQ~6>y8YKBTx<=zL*Z~Y4M_cW8 zU?1W}`?7~r*OK!|UdD}N^cVE;5I_VCFq^QggY9O^K!@E%yB!151O{-V+pxlFvmG4j zHhc&)aa{{`(p$P=T}TLl>V1*GOuq^z=wcuh_t%@uEa)3Xlii9>MGYHXCF1Xco*E4O z4*XoBwOL9lig4dRaAHb?k4`a~NDNlKa+K*AU#1k7i9}ws`vD`h7AqK;Dg$Pj4i2FM zJOyAwz1@QGxYRM#V=&CZJub!y1q8S?hHDu(neZ@h9)@*B6Zkg^m)W8->M*<$;Ah7< zu-~)$13Yz{o~{S@Fu(~0hfxnO9v@?jvNSje{dzx|0lFc~tQW#s|S;T&!8CN|Ip^Z-?)cTudT*6|6 z!lxj#VZT>>;;_GXeUU&uJ^8qT-sE%e&`ZO=DCVUBgN$DT z5WV~siW!-TBKF51_Ro6|CprYNN4y3U%F}NBgNGp8^M-ah!}vYGKqs+J#F`07mQ7Ed z3P@F6DbhNu;}{kWzH#Ac9*$yA8`KeXLETUak|H_kh4N4#>Wc=#jB7Z01m;+E$OzBY zdh{5Ygr=hD=mqpLnvWKtPbl{1(iz`QvIoNYB)8Ds-;YngL;g5ikeQ%qUKXes8!TE)ce#nYBzO| z`kFdHouhuEZm`%aAuEQ}ftAQgV<}kqtbVLY*2An?)>zgA))dzBthubEthZPjSld`% zu#T`ASwFEZvk^Ol9mnp>PGKw9D)vBj6}yIQWk125#-77o%3j0X%-+TRlHJHY&%Vy# zaiTdQP70?NrL)6<_+hK<~_=r!F!drmbaC6kavoAna}69;rHa{ z@CWiWd^>+Ce;)rW{ucfr{%QWTppc+WLDHb2psFBK(Bz;wL2m|q9CRq?Owi5Xh~Tcl zS-}H?b;09m|v zT3B>gYFJ5_F6_y$1z{V)4uxF^4-W4do*({5_=NB|;qQj;4?iCf9FZ8IiqJ$n5wRfR z{fJ``mm{MiC6NOojgd1V-;CTHc{Yk4l^9hRrHh&pwJd5!)TwB8beCvVv^M&w=;hI$ zM4yh~#U#a)#Eg!a9`pB@eK8kfqhixzhr~9-E{OdowlR(!ml#(PXNa2_w=V8z+>KTp zTIIK*TRqomO{+t#uC{L1IwmsSoYFpp- zwYHzMJ>M>-U9Wc9cGKFeYxhliR{I|9%iBNNep&lH?Jsxe*r87cONV(Kc62!3F|K1? z$I%^Ucl@~HxlYlYay#ie&F-|N(~qK9QNG9^nk(8Vy4bmW=i<(e&PzJ)>wGglDSmML zbysvB)BV-%2YRr2Wb~-(v7pEPo~)jkJ@q|b z?RhYn3&+Jx$xD-ur3h2xaze#&YwbBLB!?I9Wk?cv?CfTp)J=5v**V4brh|Va@cqU_e#vhsTOl#(v z%yaSt`6&59`7uR|qD(PE@tKmVEKokF{7`v4D>KWUwJz(IUMaoC^m?<`+3cijI(vEc zshs#6P0o^>##~YEsNBW5jlDbf*7RQ5`($31JYC+3yfgXT^GD~um4Bf?TwpC&UvO2G zrFvYoRn1oSQBPCvD~u`}TsXh*`=a=w+M?A(7yD%Nd9=^gVs3H2;unjLm2@c4maHnd z*jL{7@xD9z3Hw#_o8Rwb{~rCV{Wq7gO8b_+RC;_s*8!#h8wa9+B?Dg?_+432+1RoV z2Jr@!4O%ehhjK~zW97RlqANyLyjgLjvY>Ki<+p>o4R#FPJ|uj|h#{+nTpg+&I%{a- zu(V;15Bp+x+u{1*o2vL#L#kF(U4E$Wp_d;zJtAYo)DcG?PI|cE;oXn4eZ=s{M&sbAKm^~=f@^JcH;5;$Co@oJyHF{_9weMIpxXI6Z=ejW0GLfm`Qsl zizm;T{QFZwpV~a7!<30rPCeb{>D5!irdp>Sd#2Yji=O2?tABRibF$~=J$GxGZrbP5 z#nb0ZZzc}?@{<{w#5uwd=N_6wg|c=c7?tA}38 zdu`344vVHQy0KWl_^Ty-mTXv>xOC1k-m-Daepo(a`L5R$udiCscE$7+f2=gEY<#2q zjh(CHt5&_){>_=IS*snZ&%HI`tpk5o|9#V%lr>A%#;u+HHhSCf_K)w3dgti6e(Scs zt9WOyMABhz76~3`!^j>9@u;^`{2iidLP>MrTWWH50@PN z;>ds_2agUu`qi-!#~Q!VeRcM0!`HulGwz$4-%dQvJwENbi0|fn-~Rih|LFdYwT+pL zADvL2*mJVtBn>iliSr8bvV{+|B(_RD3LzrSLz3LFJ6o2mN4AYC^l4%!{zaVf(0Q|OCqdn zvE9T7L~$rKi^Jmbc|lyZPzJyH2TPGh> z@w?8dxOn1Mtt}&N>AI&9)h|`*3b!w_XSO;t_$2+?yHj?2={R+%C~5Zcr{8;d=iz_; z{`&e)j-0+cq-NaIIV(1Ndh~}Y@;*ar>z{dL<;Gpd&RmT|EEbfOL(0VGaWhB}I!mHB zP=c}X(Ol`I7h`Y%Z;t1XrYhP2s ztdj1|1D6NKJ>K#7qGh{!p0>}bxLn@vbmgoH=hwssJA=<4SkZwt!L1RF@{taiQ8g^^ zh+yJd2e2K2jX)OQi2f4}5mKQFnA&2eCOO0dh^W-kQq%*0AjGGl$hs0VG~nC9ycn}0 zR86(>z@w>dE*@}tN&@fN2(^b`rKAMLJ?Z&p^kjtz%Pxm-012ADK?qh0UH5x@kqqI_ zjAe->SrWNO?D|d^s6gz+RCC!Dvpo8v7qgpT%m^2cf+;WDDOd&Yst47vxgJ!acRg5? zTL+cOYSvAZK?FUU*n!-!<-!+ZQqU-)8Nb`R^1>)sdw~Gzyf04*13GUCz=Vj`Eis$2{(pe4OO#ZG{aQtsSpL<1{L@+f}|gm=A3Ya%k{~hDTdeU=X?Y z6Ub=R$7=FPm+O4#l~$9@z1SV1(dkNEpK)~K1bEHAoYpzCw7VRUcrDCYiAxTvQg*A^ z;8Uo`=8CzuP zHNYC5&Rtuf$y}-8)ts3J{n(R_|@1^|*%0cEDOK|y6iV-$h;NINZIj)^R z>;Qb&&%qy1^i+UIF2#Z<$Y@K4-2%iRxMc))&8RWyOUjGNA$1<(^G#|zUhIL;oP+mX zBg!wTaJL*$QDiMK-Er^FEkzs?xX8X={*S8?uox(D_dnkqL$?%eP*h~|*&2krt?r#j zOa^+9)txu4vRiw9mB+h)3)ib0{2Ra^EQK#(gXIKlZ>+Jx&IuVGyz1;4OHue)7zPeI zZxUW6!lP+4o}|Hj072p1eGKCoPb@xO}Z42v7m+^=r`>R0}K6X5@f9e;wf&uh#(`TaAm;T0=FiF9#P3r}d^9{1!{B ziqm6EW8B?_$-`!;@unNJ2E2RhW3QS9s|9e_MlCPA3y$9s@HTIl%QAflQ#`Q@ykSBr z9_Q?38L%w5?%Og#wYlCTqD^?*$JNF9T-L$w9zvuBo796%MC9KP8hA-E0Myb#d@T1M zEtDs9I)B@La_OKQW1AEK>QKpX=O%)i%s-SL|MQ79DhlmUUi#Rl<;h_aP zx97r~Mu$O!s4X5GGYslJsCegLSRi7KabUa(u>JX#DAg}Z*|Y? zVD0*Teixkg^MhgVe?=Q=Afvt0S;ad+pdAQRVW3G2?Y#qlIe3s0H#sl0!vLD|DR zqISayHM#Ko5I<~N*zDR2-`^cLUb^PWc!->AWwHKYd0TAcPzPY=)!HkCK$=U231X{2~oTgP@Nq&5v<}={o$mV#5d6m7{_io(VQCqambK- Y16@Zf7?Q8!JB-NJ(KYBs*Ff|C0Zg4MIsgCw diff --git a/intake/static/intake/images/datatables/back_disabled.png b/intake/static/intake/images/datatables/back_disabled.png deleted file mode 100644 index 881de7976ff98955e2a5487dca66e618a0655f3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1361 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVin+1c5}%-r12$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1OVZUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnv1?G!Lpb z1-DzwaO%|uIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@i-f{BMZ3YI$qn<8~Ar-gQ zOt$tu93XPMc=CmoA1oW4o1+WYIB!k3r72K4*@xA>;l+b1ClB@qaOE!8@r8RwiN1wc zl+_Cb3(lEQAv#$bmh>Mfe(I7Woy4{G!}EFf?)^FUc%F02^;EH~5owLt3k}+qS-P)U z616t%^wT0PX2liq$807FHoQ4d$0`5rkQ{U2Kkgclu0)Awnd5T>ob((vrABTq*u(RS z>E?oy`!@uw+@i*D$dKV&#I(EL&;9;u$GTQAMM5faVZejQCzo(NvvlZ75dZt%IYnd( z*RL;GX3W}R-P)5>-Zsu`&nUT&Ho^GzHq{#}Ya$hT91>M0@O`!9^}b&yQ@87fac$Vj zkb72h`!2pMTYunpu!r@;1)uFRXDvHO zu{mw?PmW#JOy1f}J}ILj)G2cQ^TrhhTtyr5@7eCYm=Uoy?6qTPsOnt5?2i>S(pg>~ z>M~M93=YlxcD}*xKl_@hz5j0IZGT@9Yu_^8_RN8=&YkAdFR(fGAAWd4CvkG#0^hlN z8>(g;?I=2=cEEAHaL+WiOvRp~fl`n5dTf5V)bNv|ZcjyzLHRnz@2)SdPWo#3tF@Nf ZfT6u;&2Oo-XD5RSIZszVmvv4FO#nm}^+Nyv diff --git a/intake/static/intake/images/datatables/back_enabled.png b/intake/static/intake/images/datatables/back_enabled.png deleted file mode 100644 index c608682b04a6d9b8002602450c8ef7e80ebba099..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1379 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVin+1c5}%-q<}$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1ObbUQklVEdbi=l3J8mmYU*Ll%J~r_Oewb7Ppv~yBe68 zyO`lL52`l>w_A*G>eUB2MjsThND&Pa0;V1i6P|2=9C*S{%>$EaktaVzQ1|Nr*PTN#9zMHxeRlNl-}v#d8N^Zk>0_uB7B{#OES8f>#2yG~0qw!L6p zdFucF|1%kW<~W?`S<}!e5q#_SzEeiVo81hJjGh}A8F|(J{8J?#FoV5gKjTM#g@4`` zHat7G{ZGytn}0n$K9W8@XQml^^p~IC#Pg_K>J#_+(?*}aZPd`ZZNa#A3a7~tW{o3_ zI{&|(mY(2PV%myRe9%s|Nr;*;U>8s5-)SkmAo$(Keu+yr%y+}MlE>zy+BR9?SIdWBY}H< zKKU5g_O$y^9OKN@zGsEyW<{&Edwac(+`RcS*M!N;4lBR&3)I`!79H%>{JYJ#JU4sR zw=W-e8rT2-_sjK!ftX42KgY{w-6eiM*mqC=xu5>dtj80wm*z`6(^6Ws=-8Pfr#M2- zH|Sq%;`zb5)KTvzU)R6$^W*Do?c4e6>`&v<`V~L7?ymp$=Mn1__Wu)kQ(K;TCm0xpn=Pl3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVi#&A{2f&C=D-$=KD<(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1O$kUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnrq&G!Lpb z1-DyVaO%|uIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@io@8}5n}LDxvZsq#&7*Qma&&|D2p_oRXCd37) zY)8(V;EL!lR8{!YrXwuuEuySktariS<$U}5@0hthGki2x_{Vvqo>S_XblJrDt*y7` zPn>AToH0Sw=g;r$;tI__7PkF4^xDY!x~Ps)lA51GcnTBmM+UA!h136k{gg`)kQbFq_VoBPIz)-gPOY!2f65f}=7PcDED2?Ugq;l&g-#qfGNQQhO_+II&v(YRhj*tM|Nr;*pX&(& zF_Y$hj+f86OZ@)!^=7=>-T3-YSLKUdZuf3aZ4YHF;C{AO_%40X!?e|-Fvdj7ri>D1+zvG8V_^em6og*g*a z*EjxPy&}Hf@!5mZjQ6qphxS*AM7=>RkU?nOd5knEBbr8HFk%v$fL@6c;9Zd9wYKN-$4mP%of=)o3c4OvNL;R&+N+X9LT{Okt1^`hto(i9qCLfJ?T%gDTI)M zrWq|mu z7li4?L^AuD#TkVH7rKN?y2!<@aHVUwrmI}-1~?&$+LOUrYV9ZU0BuIk>p}=kChZ!cB(`Z{G6LquYzOJ#uFG?WnAbZ+CN-7~je|L&F7j~-jT?}2Ymz4gt89^bm|{$Dmf ze_Bu7abo4prBmw{zdwKU_zO#$D=+@={&U-L;@-n|ub*Ax2baI&JvYB|=*wr{`2Cr4 zkL?`T`S0?Dr5{(%Z~XkwjsL9wv3l&%?t53B`1`k$Uu@lV>xqvqymsm2*@e|t_8xPH_2UOq48~^|S diff --git a/intake/static/intake/images/datatables/details_open.gif b/intake/static/intake/images/datatables/details_open.gif deleted file mode 100644 index 6d1d2134ad456bc00c533389cf641155064f58ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 145 zcmZ?wbhEHb6k!ly*v!BX5D;+uc)*4Y8~zgq6o0ZXGB7YQ=r8~Q$P5M+JA)IRtM}gM zJG)!{ih9vQHU?$O!sj!mIp6Nupi{lIHh-sGv-afo*FUdR(MewZ;+IJLK?yBZm!QIn N+WLpzmMJq>0{}F#PK5vf diff --git a/intake/static/intake/images/datatables/favicon.ico b/intake/static/intake/images/datatables/favicon.ico deleted file mode 100644 index 6eeaa2a0d393190ce748107222d9a026f992e4a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 894 zcmZQzU<5(|0R|u`!H~hsz#zuJz@P!dKp_SNAO?xUfG{@$0|>*weY}F;x;`B~@Mg`jC-vo5%k$%{OoKy1zkdA+(K2o3 zEDKGQQ~gcX+N!TtEj1|9e2tL(rheJva*5dKY#gZsIRxM zB;!h75Wi?9l5?>z>S-`t`=OAFp5C?(007k>qM(bnVuyja#;c*qL9N z(Q%=@`f7d2?T&^wySIHjy#MKh?rZrO7i!Bt-@f(!@WDrwB`uD&)%Eqcd3o(gVV7ri zp6ji@(BF7(+uE0x&)(R!?s#YIg_7JW1=-KHZv1@s(DSxD9<^am-%+f#!uU}z9=j>5*%b{WE2`20#tutPWS1# zz4s39d~xOMwaqJzOl{rMU%#oo=xj&xyY1WF&71o?Hs-LOkAD^4SRbV?yXz(e#efNwKXpT1J^s+yE;1`KXoe5&f?1A$tYso}un=1c3AzCL>B&D=RpqN3i1hL&lnclP!D`u*G0#bsJv!oAH) z-rc|T`^Wdkrw?7(xb)_p%`Y#WdAn`Pvz+W#0Rbo6-Ha3zp1gPgjDkZ)k6Gz!@9D0( zG^hL4?)Be4zWep#`{$>RUhUoaq@wgyfd9*oU{6tz+SXQhl3284sj;T&{L=I*bGxt4 z@4vfX%A<*$FN^a&MMa!l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVin+1c5}%-qS)$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1PFwUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZns$CG!Lpb z1-Dxqaq86vIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@ies{+CJ_7^eaZeY=kcwMt zrucd@1&XviUp=W&hC_Vigxz9qe=+JQiRZ>#-OmxVbJNmo0?O0%xE7^$7hDVzS=7nq zBvt-aWrpIMi;ByGX0JatRXb+C`iBGE*Nwm1%=tcVr*ri@cU^6Xtj>)g66P@%1db+s zWSF+QYf((v=9^+`Y}d3l_I1DM*_La4%-~FX zOD#3=6_)Nj)~$1T^@J$qollO4A6gI{9eUN=bCTSutFMe5M0p+_TYIkc<*t8mtFJEc zTKXwVqK$2(et`HF?-Em4wsukSTsY4VW0ic bdL|wQU%!)=<|i%z6_yO1u6{1-oD!M<;V$ow diff --git a/intake/static/intake/images/datatables/forward_enabled.png b/intake/static/intake/images/datatables/forward_enabled.png deleted file mode 100644 index a4e6b5384b8454ee7f44a8f7c75b0321b7eeb9b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1380 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVip+||I$+{MJu$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1P0rUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnqfWG!Lpb z1-Dy_aq86vIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@iW_)h2mVtrshNp{TNX4zB zKmY&RGjC-OW)@`(g)dh`10)R-NpU#bM1=1eo8Z2AYd)<-?^`_sqOFY@6XS7KM&8JXTA5$g^A9S z{TX;`xlCJF@2;-kt^WS)-(qj^YjbRh3Qo21zn9<7##PJs=)J=q?vtT6c$tqWSn$;S z{q^hJt*2*?^Szy4@bTi|;PVYm@{K=qh5oS|v0uoRWd7#=|NZ;-*VL7!+I+Ui=RzOdW2D@cF)|8@0kar@euUy>OYxL3%Wh|X{LVLRn7b4UH-Q)xXL zlsIOXI?k$WjNtJ4&-&^N(`qv`*KNBfVYRHPjKr+8GT t=fC*;><^O18kWptJjt-AJE?(znPJ1m)BPofdH;jTJx^CZmvv4FO#l_Q2A%)_ diff --git a/intake/static/intake/images/datatables/forward_enabled_hover.png b/intake/static/intake/images/datatables/forward_enabled_hover.png deleted file mode 100644 index fc46c5ebf0524b72a509fe2d7c1bc74995cb8a9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1379 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVi#&A{2f&C=1($=KD<(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1OqgUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZns$AG!Lpb z1-Dx)aq86vIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@imN7BvVqjpr?&;zfQgJKk z&;S4S%v%{AKQQkRwI?VL9s)YsRaG&b6_ zgRo<91_J$Y%O?`e|&#$ZtS+eXp_f= zjUUrLb7!pi%4at>{rxttxB!poqO-MU1}Hz4_scgh+`O`|pzGU*Ppd<;SGk>1td!-8 z=;-~nzrMci*RP)sFMiM0pIiAYgm$R?>m2vx|wYgZ#kAH7}W-quPuJDiV$o>g2t#=I)c$y9~%y7A9 zTfgc1jk&Lj_4ZX)f0PV(p)9c9_0ar=AL>^e-n9Mw|Nr~<^YZ!qF*`48{dsWi)b|VZ zD%w*xPFz?Y(EM+~bAgn@|LT8!dGP4_dwn}*-YUka%$2Ws1@^aZs%Q9^A9It(GQY{> zGt)+aDgU^S%wM?fC!gsP`E`4^jM#4)q-B&8J6^t!zrwrDf%l)k#^S|Oq%QdIe*R^@ tLh*lxrsW37V+~Wv{w==9!pqEIz%cpgo%)U5J^Y|z&(qb2Z8_q diff --git a/intake/static/intake/images/datatables/old_details_close.png b/intake/static/intake/images/datatables/old_details_close.png deleted file mode 100644 index 9c7d6982d9a1408f24278ed38458bcf4722f365f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 686 zcmV;f0#W^mP)rc9KHq9BMrrU)X4H-ZEQYRE1Mf85oDS6+Hm_uUD?Zq_fw zn=!^pDk~VX)hyi>=S**$PUrUR`S!lB@UYy4U- zlEcGD4Gkgv=rJ;WKMI))DAuw^dT%HXWm=_w?8Z*(BJ3CQI%#--o7^rMEd#LBM)@B$J!$?OvK`BMr zRsP$^2&f}b(NMqg?(VM1WPEB0UtKPttw@_o;Zl6jYuxh?_E**)MMmZ=lj-GUY_zo4 zX(g@tS*_O65-5I9{ZVRcW0RMmjZRMDLvyp>RI5|PAGtc61d;J^<~u33U#`0zaEJU_|e`8Yr*V+r?U8t8q~5ysN3H=`#OLdQ`{tkJnH+Sb-{!Kx_E1b-CDbv<6zhT-G!; zHrm-k^-4++%<@a!5cN&=qHLfPW&NcnA1I0WN?Z#PQ?_Tq4T=XPJ+fmXr9Rgh3WX*Z zY#nYzQEw57`)ss=4Tg%vFE(OA%kWiDnx_5WNX2@ofwe7&7_56;heB6A3S0$9q(X_2 z`oVfov$L}iHK*xu4Qu;rVd=8M;tWJwyMNQvvP;;W?hU$~2rlvFo8-^N?*Lg_D zTe3=V`<3HIr6d4&egY9GOIM|W1%+nkgGI!)I?U}_s`qE~MPPaOgl(?}8>tURI zbq@QVWUtD}o>Q37XTTcP8e{XvVEg@k7er&fzT$lU1!T4DL)K$KEZM8pr+dy|-ehDF_X77(*?9ze9%f;;Q2ML_ci!DaFdSTY^)igBw_c9}Yfb<4e2tHf re}@wNRi3XkJ+L;i)(3W7{ssI7YL=IQ_s#k*00000NkvXXu0mjfLt|7w diff --git a/intake/static/intake/images/datatables/sort_asc.png b/intake/static/intake/images/datatables/sort_asc.png deleted file mode 100644 index a88d7975fe9017e4e5f2289a94bd1ed66a5f59dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1118 zcmbVLO=#0l98awuV{uMt6P_}u4rcI3idKFP2SpU%ZJIE?RL`X zK?Oyo=*5GG2SxDYK=7akJqV&hrl{aWJa`y*5xh+1%i2y4V}gO?edPc9{r;a9vjc}) zn|Cxb4AYwFmvVG%_ui)U^y_4!ujsO!qzYuv8YUIR!Aw%KiWp=JrG#@>(I!s4#N7H->?w+cxsH2#GA};A>g8lyFDGPKh!5)vuP_{)}*83+N zJUBU!S0_i+E{*Lu1iGsNB``2iK-CyCU7?y_mv{xb_pUh>ESZqe1Y2{eAZLMSIT%EO zFrdOH1W^=3p>Qk~I{J+k#s5zQ@j{%aIA!l^GQjJ zqA1Uc2%!{8qBKfMNh#9DCnKS_*uZ8?mnf!+8@f8xtz#prVg=E`3bCBLWsNmDAX~PG z<(4fQh=UOzE2?gKXRkc9XeI3Er?HlHECVd%SI}3`hy1_du3@$R$r(qT;k@Sft63UX zv;)2Ea_iH>^6+4jPK-lGM{Zw37Tz>~~zlHzO61x51(V4jcaKrcIVDG$-d>)z}S|7f!xxYhfUE}Kj zug_h&HZN}go22$5Ym1}P8~vYNx7-~$TWFJ;_nh!wFYSAQJF{CCo=xpK8^7?iY1^!H haOA^1D_`VC7fU=jcT diff --git a/intake/static/intake/images/datatables/sort_asc_disabled.png b/intake/static/intake/images/datatables/sort_asc_disabled.png deleted file mode 100644 index 4e144cf0b1f786a9248a2998311e8109998d8a2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1050 zcmaJ=O-K|`93R^(@goeAz6hRU)S-61)?IaU({*Myml|8vh4x}JJM&z}b>>Yo&vx~s z*1>{0Sk$FMM28~iln?~vp$ zL+z1TilQ3g{c@7*P2Q^6L;g-8^nq-LaWstw(J;=d4x}PF%0Lh|)htXxRiC)>9(Gfd zk2X?ioL0_@8ZsHx!!QNYCTxo8?kU)+mV+2%VAin0^v_psXkh4J`eIPw6kCELM*pM( z2PX$o+GI}a)ajlxpt~Rv0TW^s6wEQp6$@dys4J4Qcg@nE2*J59y%|(mNdO5s5Cj>{ zuW=y`gm{Jzw6(Xlp9TWQb1WyYyx`~C#eg7k94LJ>@#g5mVp5Kkd=V>5k6>(zESt~g znS6jjPL}06J3BoMLGTlV-<`0qTJT$LYgs{tuI3mvHjo88MKy!QahN8NZl++`Te6m0 zDibLfTTpG5XE-mVGEhip#w2PB)JKi0I-PD8)*(7w)xTBHA4Yzu(Y*BKcijk8- zXslet#0bL39YHpb27^FRHN*1kB3@C%xaDHi(qLQ;(?o$W3|;IHBC-_Xc|nkPo{#bo zKE_Anh#c$_BEdk1ROZS^8#kea%Upe%D^%oqqhQ*^vkV>MD%4{RGC?tA(byrDwm?jZ z#$wTmdL^!2ITo%WmnFflUSt1hboq)*k9XV}TViYtKD5ZRJ7lb1H!ZJ`CviJ2M^c5A z%=*Sgk8hr8@-S*Kr`Ol~RJX(fddmmK4eR}O=#0l98WD1Hz^GK+C=e@fhgE~b#2$Ux^~T`1v5)mw1NlIe}zC z+ge9alrMQeN|SYi`>tC{zIG}!O_oO7k;UC8kBf>8sknx65F`zy2d1H-4fel=trX>@ z^-LCL<%6P%3`TJ=Ov$hao1$9VN|vJbLJV@SM>nJN{L>dS(6uOiBq(#Tm4F5Pz>p2Q zhq^NAP_G)%=(c^JwImV&17Zb~j6Ty5OHq1RS0sD)n5Dro1ouYi-$7;N6i6T&f*`~B zRW8JV5YO;|=5RQ?2M8R`v7Es2f}anI0YT(Au=3Evo2})=wA8uci&#;*fUzaAY_V8m ziU9`MJuDxIL|hF)@DqgJ88op{@|#XmML~j&YU>u(kqKNyC5HxZlqQk>PQkENWld+L zOr&6JNwHX-;oOueKw17j)G$`j4o<^A@%~fT$qZVMO+yC_*eYpUzR7iEi3uAj7}*(w z`YKgS6%a;F0a+l?9R#wX>ZWTi<7HV)nhsV>6(*%9O%xbi*F?TK!383rh#(|*p6}q} zd?z25;!?0(hzA2Li3(Rj>VN@FT;Xbexbdo7cN7eZc$T28pMYAYjSR4yvZz;&C0tc+ zg{xJMrKKvDCBd+6WB+P&<%mp=yImbyVyq56G|9BvWUP^I>ms=lb4e+lDSgg;Us`JO zKB6{wH+j~F#-A4FY3K3qm~Z6m@V6}oQ%8?p-E$dw`#0C$PJfmCV8)v}3>Ydha%`fZ zJk~G*M^A3LGk$Td;R`icF67R~`sBOHv)Hlqlc%$jy~9_oZJcNyWxkbb_O9u#|7hLF z-<-NMLzh3S0YA@8gd1Pt(Df|3@16Y-n=aSvsF@AkI`ioeFg>&H3bXU&vBnE6gIChkL+(Ey+0iB4Z$Eze7t_CX>Hq)$ diff --git a/intake/static/intake/images/datatables/sort_desc.png b/intake/static/intake/images/datatables/sort_desc.png deleted file mode 100644 index def071ed5afd264a036f6d9e75856366fd6ad153..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1127 zcmbVMOK8+U7*1U&zKRu5sR)h{1;yRWWV^4}ShvZpU2*HWU2!iy(qy)cZ89;Lb+`3m zMbruv!GjkO!3qksP*5)lD)k}=Dp*ht-n@8G5m8XoN!zU+ih_Y;=AZe$?|)|~*Ri8v z(dtDU$2DZy)jV65`|pB!_H}d7Cv0h=sUqzpC0fy3%q0!dg+a#Bx^W(BM*oq=xP{{a zC9_bZ#q2IgCss)FbwX9kVQ7wPX{|b%-is;d!ri7V^Y8E8=YeU+{JuyQW*r6hnC$~D z?i}bS=mWia!r)uCftISo2rNuBP__DOPpZoN6tBeg{;|M=DHYl)^V3chvpJv;7lTL$ z26Y&PAc{gL+#HL=wg3?#C_qs_Vi3iouqZ(YW*(kdbB&UeSJN}Lm?ZN(lsb|iR4SEF zB^)Adw}29fgwG+0L8cM(`faLJgSNN6#-L(PcTI+l@K3y+Xf(g*^61+0|J+O6zN2mb?UNGh6GU@A{1+eF%d@N2(^XdVmhis(y25|iAr;gV=io5OsYy0 zB}Gv|2&GUGrBPB%s*yG^841Ug8a88lRI_zlvuiTDGuXsmv6A9qjS{y&NMEf3ay^6+ zuZK85>5PD^rkl1e`{kLAR>iJ)6dP%mSYRr@k~xQcDE=$%X{_--ITM&Og5Ml}G)wJ> zb)dhUZG9%p4iC23#JFrUCcmwHz{cugMoku~ue-kg{Mj0~%`FeCcz9jAdg}QET-kSG za`+2B_+lRTaeAVz>E`F1pN7h>B=BbGqcz13d%ywZR&4OjkNNrF_U}#EcXDGa@V52B z>JnIW7#s%CHi diff --git a/intake/static/intake/images/datatables/sort_desc_disabled.png b/intake/static/intake/images/datatables/sort_desc_disabled.png deleted file mode 100644 index 7824973cc60fc1841b16f2cb39323cefcdc3f942..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1045 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 diff --git a/intake/static/intake/images/datatables/status_locked.png b/intake/static/intake/images/datatables/status_locked.png deleted file mode 100644 index 168aa1a4e7f5c907bc1034ed6ed55940eed339aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2341 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 diff --git a/intake/static/intake/images/forward_disabled.png b/intake/static/intake/images/forward_disabled.png deleted file mode 100644 index 6a6ded7de821619aedc71d1738c0b73463a4452e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1363 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVin+1c5}%-qS)$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1PFwUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZns$CG!Lpb z1-Dxqaq86vIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@ies{+CJ_7^eaZeY=kcwMt zrucd@1&XviUp=W&hC_Vigxz9qe=+JQiRZ>#-OmxVbJNmo0?O0%xE7^$7hDVzS=7nq zBvt-aWrpIMi;ByGX0JatRXb+C`iBGE*Nwm1%=tcVr*ri@cU^6Xtj>)g66P@%1db+s zWSF+QYf((v=9^+`Y}d3l_I1DM*_La4%-~FX zOD#3=6_)Nj)~$1T^@J$qollO4A6gI{9eUN=bCTSutFMe5M0p+_TYIkc<*t8mtFJEc zTKXwVqK$2(et`HF?-Em4wsukSTsY4VW0ic bdL|wQU%!)=<|i%z6_yO1u6{1-oD!M<;V$ow diff --git a/intake/static/intake/images/forward_enabled.png b/intake/static/intake/images/forward_enabled.png deleted file mode 100644 index a4e6b5384b8454ee7f44a8f7c75b0321b7eeb9b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1380 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVip+||I$+{MJu$=KP@(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1P0rUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZnqfWG!Lpb z1-Dy_aq86vIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@iW_)h2mVtrshNp{TNX4zB zKmY&RGjC-OW)@`(g)dh`10)R-NpU#bM1=1eo8Z2AYd)<-?^`_sqOFY@6XS7KM&8JXTA5$g^A9S z{TX;`xlCJF@2;-kt^WS)-(qj^YjbRh3Qo21zn9<7##PJs=)J=q?vtT6c$tqWSn$;S z{q^hJt*2*?^Szy4@bTi|;PVYm@{K=qh5oS|v0uoRWd7#=|NZ;-*VL7!+I+Ui=RzOdW2D@cF)|8@0kar@euUy>OYxL3%Wh|X{LVLRn7b4UH-Q)xXL zlsIOXI?k$WjNtJ4&-&^N(`qv`*KNBfVYRHPjKr+8GT t=fC*;><^O18kWptJjt-AJE?(znPJ1m)BPofdH;jTJx^CZmvv4FO#l_Q2A%)_ diff --git a/intake/static/intake/images/forward_enabled_hover.png b/intake/static/intake/images/forward_enabled_hover.png deleted file mode 100644 index fc46c5ebf0524b72a509fe2d7c1bc74995cb8a9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1379 zcmeAS@N?(olHy`uVBq!ia0vp^!XV7S1|*9D%+3HQ$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%u1Od5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|80+w{G(j&jGsVi#&A{2f&C=1($=KD<(AChw*vQht)WY1&)XmVs z#Kj1v*Cju>G&eP`1g19yq1OqgUQklVEdbi=l3J8mmYU*Ll%J~r_OewbZns$AG!Lpb z1-Dx)aq86vIz}H9u}BdO69T3l5EGtkfgE_kPt60S_99@imN7BvVqjpr?&;zfQgJKk z&;S4S%v%{AKQQkRwI?VL9s)YsRaG&b6_ zgRo<91_J$Y%O?`e|&#$ZtS+eXp_f= zjUUrLb7!pi%4at>{rxttxB!poqO-MU1}Hz4_scgh+`O`|pzGU*Ppd<;SGk>1td!-8 z=;-~nzrMci*RP)sFMiM0pIiAYgm$R?>m2vx|wYgZ#kAH7}W-quPuJDiV$o>g2t#=I)c$y9~%y7A9 zTfgc1jk&Lj_4ZX)f0PV(p)9c9_0ar=AL>^e-n9Mw|Nr~<^YZ!qF*`48{dsWi)b|VZ zD%w*xPFz?Y(EM+~bAgn@|LT8!dGP4_dwn}*-YUka%$2Ws1@^aZs%Q9^A9It(GQY{> zGt)+aDgU^S%wM?fC!gsP`E`4^jM#4)q-B&8J6^t!zrwrDf%l)k#^S|Oq%QdIe*R^@ tLh*lxrsW37V+~Wv{w==9!pqEIz%cpgo%)U5J^Y|z&(qb2Z8_q diff --git a/intake/static/intake/images/sort_asc.png b/intake/static/intake/images/sort_asc.png deleted file mode 100644 index a88d7975fe9017e4e5f2289a94bd1ed66a5f59dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1118 zcmbVLO=#0l98awuV{uMt6P_}u4rcI3idKFP2SpU%ZJIE?RL`X zK?Oyo=*5GG2SxDYK=7akJqV&hrl{aWJa`y*5xh+1%i2y4V}gO?edPc9{r;a9vjc}) zn|Cxb4AYwFmvVG%_ui)U^y_4!ujsO!qzYuv8YUIR!Aw%KiWp=JrG#@>(I!s4#N7H->?w+cxsH2#GA};A>g8lyFDGPKh!5)vuP_{)}*83+N zJUBU!S0_i+E{*Lu1iGsNB``2iK-CyCU7?y_mv{xb_pUh>ESZqe1Y2{eAZLMSIT%EO zFrdOH1W^=3p>Qk~I{J+k#s5zQ@j{%aIA!l^GQjJ zqA1Uc2%!{8qBKfMNh#9DCnKS_*uZ8?mnf!+8@f8xtz#prVg=E`3bCBLWsNmDAX~PG z<(4fQh=UOzE2?gKXRkc9XeI3Er?HlHECVd%SI}3`hy1_du3@$R$r(qT;k@Sft63UX zv;)2Ea_iH>^6+4jPK-lGM{Zw37Tz>~~zlHzO61x51(V4jcaKrcIVDG$-d>)z}S|7f!xxYhfUE}Kj zug_h&HZN}go22$5Ym1}P8~vYNx7-~$TWFJ;_nh!wFYSAQJF{CCo=xpK8^7?iY1^!H haOA^1D_`VC7fU=jcT diff --git a/intake/static/intake/images/sort_asc_disabled.png b/intake/static/intake/images/sort_asc_disabled.png deleted file mode 100644 index 4e144cf0b1f786a9248a2998311e8109998d8a2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1050 zcmaJ=O-K|`93R^(@goeAz6hRU)S-61)?IaU({*Myml|8vh4x}JJM&z}b>>Yo&vx~s z*1>{0Sk$FMM28~iln?~vp$ zL+z1TilQ3g{c@7*P2Q^6L;g-8^nq-LaWstw(J;=d4x}PF%0Lh|)htXxRiC)>9(Gfd zk2X?ioL0_@8ZsHx!!QNYCTxo8?kU)+mV+2%VAin0^v_psXkh4J`eIPw6kCELM*pM( z2PX$o+GI}a)ajlxpt~Rv0TW^s6wEQp6$@dys4J4Qcg@nE2*J59y%|(mNdO5s5Cj>{ zuW=y`gm{Jzw6(Xlp9TWQb1WyYyx`~C#eg7k94LJ>@#g5mVp5Kkd=V>5k6>(zESt~g znS6jjPL}06J3BoMLGTlV-<`0qTJT$LYgs{tuI3mvHjo88MKy!QahN8NZl++`Te6m0 zDibLfTTpG5XE-mVGEhip#w2PB)JKi0I-PD8)*(7w)xTBHA4Yzu(Y*BKcijk8- zXslet#0bL39YHpb27^FRHN*1kB3@C%xaDHi(qLQ;(?o$W3|;IHBC-_Xc|nkPo{#bo zKE_Anh#c$_BEdk1ROZS^8#kea%Upe%D^%oqqhQ*^vkV>MD%4{RGC?tA(byrDwm?jZ z#$wTmdL^!2ITo%WmnFflUSt1hboq)*k9XV}TViYtKD5ZRJ7lb1H!ZJ`CviJ2M^c5A z%=*Sgk8hr8@-S*Kr`Ol~RJX(fddmmK4eR}O=#0l98WD1Hz^GK+C=e@fhgE~b#2$Ux^~T`1v5)mw1NlIe}zC z+ge9alrMQeN|SYi`>tC{zIG}!O_oO7k;UC8kBf>8sknx65F`zy2d1H-4fel=trX>@ z^-LCL<%6P%3`TJ=Ov$hao1$9VN|vJbLJV@SM>nJN{L>dS(6uOiBq(#Tm4F5Pz>p2Q zhq^NAP_G)%=(c^JwImV&17Zb~j6Ty5OHq1RS0sD)n5Dro1ouYi-$7;N6i6T&f*`~B zRW8JV5YO;|=5RQ?2M8R`v7Es2f}anI0YT(Au=3Evo2})=wA8uci&#;*fUzaAY_V8m ziU9`MJuDxIL|hF)@DqgJ88op{@|#XmML~j&YU>u(kqKNyC5HxZlqQk>PQkENWld+L zOr&6JNwHX-;oOueKw17j)G$`j4o<^A@%~fT$qZVMO+yC_*eYpUzR7iEi3uAj7}*(w z`YKgS6%a;F0a+l?9R#wX>ZWTi<7HV)nhsV>6(*%9O%xbi*F?TK!383rh#(|*p6}q} zd?z25;!?0(hzA2Li3(Rj>VN@FT;Xbexbdo7cN7eZc$T28pMYAYjSR4yvZz;&C0tc+ zg{xJMrKKvDCBd+6WB+P&<%mp=yImbyVyq56G|9BvWUP^I>ms=lb4e+lDSgg;Us`JO zKB6{wH+j~F#-A4FY3K3qm~Z6m@V6}oQ%8?p-E$dw`#0C$PJfmCV8)v}3>Ydha%`fZ zJk~G*M^A3LGk$Td;R`icF67R~`sBOHv)Hlqlc%$jy~9_oZJcNyWxkbb_O9u#|7hLF z-<-NMLzh3S0YA@8gd1Pt(Df|3@16Y-n=aSvsF@AkI`ioeFg>&H3bXU&vBnE6gIChkL+(Ey+0iB4Z$Eze7t_CX>Hq)$ diff --git a/intake/static/intake/images/sort_desc.png b/intake/static/intake/images/sort_desc.png deleted file mode 100644 index def071ed5afd264a036f6d9e75856366fd6ad153..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1127 zcmbVMOK8+U7*1U&zKRu5sR)h{1;yRWWV^4}ShvZpU2*HWU2!iy(qy)cZ89;Lb+`3m zMbruv!GjkO!3qksP*5)lD)k}=Dp*ht-n@8G5m8XoN!zU+ih_Y;=AZe$?|)|~*Ri8v z(dtDU$2DZy)jV65`|pB!_H}d7Cv0h=sUqzpC0fy3%q0!dg+a#Bx^W(BM*oq=xP{{a zC9_bZ#q2IgCss)FbwX9kVQ7wPX{|b%-is;d!ri7V^Y8E8=YeU+{JuyQW*r6hnC$~D z?i}bS=mWia!r)uCftISo2rNuBP__DOPpZoN6tBeg{;|M=DHYl)^V3chvpJv;7lTL$ z26Y&PAc{gL+#HL=wg3?#C_qs_Vi3iouqZ(YW*(kdbB&UeSJN}Lm?ZN(lsb|iR4SEF zB^)Adw}29fgwG+0L8cM(`faLJgSNN6#-L(PcTI+l@K3y+Xf(g*^61+0|J+O6zN2mb?UNGh6GU@A{1+eF%d@N2(^XdVmhis(y25|iAr;gV=io5OsYy0 zB}Gv|2&GUGrBPB%s*yG^841Ug8a88lRI_zlvuiTDGuXsmv6A9qjS{y&NMEf3ay^6+ zuZK85>5PD^rkl1e`{kLAR>iJ)6dP%mSYRr@k~xQcDE=$%X{_--ITM&Og5Ml}G)wJ> zb)dhUZG9%p4iC23#JFrUCcmwHz{cugMoku~ue-kg{Mj0~%`FeCcz9jAdg}QET-kSG za`+2B_+lRTaeAVz>E`F1pN7h>B=BbGqcz13d%ywZR&4OjkNNrF_U}#EcXDGa@V52B z>JnIW7#s%CHi diff --git a/intake/static/intake/images/sort_desc_disabled.png b/intake/static/intake/images/sort_desc_disabled.png deleted file mode 100644 index 7824973cc60fc1841b16f2cb39323cefcdc3f942..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1045 zcmaJ=&rj1(9IuWjVlWt@h#q(rlc~7%$2P_q>KN??ODrK{#&I!}_Kh{rzS=%m2N%F- zAW={L0VZBJnRrkSCK{q1NKA||(ZmA>6Hgw9o;Z-;>)3_|u*vIt-(X0AeGY5Bm`Mgoq{>2>Xkbiu%Ds= zw2?31f^tL9kQr8eOxQDR!ltPHq-U$zG{j&MP8pU+Z@qp?149?-TQP-IYzdZ(;duv+ z&5z`@`Drbo)5+_g-xG*{39$-1bH;K7Po%550y+EF3=OIfJT20DK^2ryARz~WSeOlI zY%dFXxiA-r#^dp8fM+?DVR?q*LtI>l@B+(%+D8*_j$RaUa;D~sSR!4**cKS3TrP*p zkuY+m7%q`W_!>MPB8ZS%v9RieEVsL^AVXJk3>zEB0=}X;iDt1#lSubcFztq{<<`nX z3dVS<&2VAXPpJ-6l>b9bvw?PT4(`W$ps<^-*pSIV7tJ~vX67YQ8ELa7v~ZoP?{i~^a{W;-ZQ@ymjxh)IjDt*2O<6Dwh=q$vY$VY; zc&J{Ds~-?cjVm3>Wk@iL-`IZ|UB4pJ;~yJiON_?gLyJtiL&kbxZhV_OiPfx}%6s1@ zcXoG^ffrPJ;LQ4(`t<(ickJ1j|E0&fC8lSh8sUh5lwUg=l~QoqsK t`nTanN|e2@a&yVMdhy - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/intake/static/intake/images/uu-logo.svg b/intake/static/intake/images/uu-logo.svg deleted file mode 100644 index 2aaa38e2..00000000 --- a/intake/static/intake/images/uu-logo.svg +++ /dev/null @@ -1,329 +0,0 @@ - - - - - - - - - - diff --git a/intake/static/intake/images/yoda/yoda-kleur.png b/intake/static/intake/images/yoda/yoda-kleur.png deleted file mode 100644 index 9d5352eefd83ddbf2b1bfaa2f8c2a49232b77098..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26343 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 PG$_jQ8o-)&7N7nH`Wb2{ diff --git a/intake/static/intake/images/yoda/yoda-man.png b/intake/static/intake/images/yoda/yoda-man.png deleted file mode 100644 index c2fc97c525c6d38d22a4478bc7029d6eef0ce25d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22272 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 diff --git a/intake/static/intake/scripts/controllers/intake.js b/intake/static/intake/scripts/controllers/intake.js deleted file mode 100755 index 45e31be2..00000000 --- a/intake/static/intake/scripts/controllers/intake.js +++ /dev/null @@ -1,383 +0,0 @@ -$(function() { - var tableUnrecognised = $('#datatable_unrecognised').DataTable({ - "language": { - "sEmptyTable": "No data found", - "sInfo": "Total files: _TOTAL_", - "sInfoEmpty": "No files present", - "sLoadingRecords": "Loading...", - "sProcessing": "Processing...", - "sSearch": "Search", - "sZeroRecords": "No data found", - "oPaginate": { - "sFirst": "First", - "sLast": "Last", - "sNext": "Next", - "sPrevious": "Previous" - } - }, - "bSort": [], - "columns": [ - { "data": "date" }, - { "data": "name" }, - { "data": "pseudo" }, - { "data": "type" }, - { "data": "wave" }, - { "data": "version" }, - { "data": "status" }, - { "data": "creator" } - ], - "iDisplayLength": 50, - "bPaginate": false, - "bLengthChange": false, - "bFilter": false, - "order": [[ 6, "desc" ]], - "sDom": "<'row'<'col-sm-6'T><'col-sm-6'f>r>t<'row'<'col-sm-6'i><'col-sm-6'p>>", - "sPaginationType": "bootstrap", - "fnInitComplete": function(oSettings, json) { - //$('.dataTables_info span').text($('#totalSignups').text()); - } - }); - - $('#btn-start-scan').on('click', function (){ - var study_id = $('#studyID').val(); - var study_folder = $("#studyFolder").val(); - var collection_to_scan = Yoda.basePath + '/' + study_id; - if (study_folder) { - collection_to_scan += "/" + study_folder; - } - $(this).prop('disabled', true).addClass('disabled'); - inProgressStart('Scanning in progress...'); - Yoda.call('intake_scan_for_datasets', - {coll: collection_to_scan }).then((data) => { - console.log(data); - if (data.proc_status=='OK') { - reload_page_with_alert('5'); - } - else { - reload_page_with_alert('6') - } - }) - }); - - // datamanager only - $('#btn-lock').on('click', function (){ - var datasets = [], - intake_path = Yoda.basePath + '/' + $('#studyID').val(); - inProgressStart('Locking in progress...'); - - $('.cbDataSet').each(function(){ - if($(this).prop('checked')){ - datasets.push($(this).parent().parent().data('dataset-id')); - } - }); - handleLockingAndAlerts(intake_path, datasets); - }); - - // datamanager only - $('#btn-unlock').on('click', function (){ - var datasets = [], - intake_path = Yoda.basePath + '/' + $('#studyID').val(); - inProgressStart('Locking in progress...'); - - $('.cbDataSet').each(function(){ - if($(this).prop('checked')){ - datasets.push($(this).parent().parent().data('dataset-id')); - } - }); - handleUnlockingAndAlerts(intake_path, datasets); - }); - - async function handleLockingAndAlerts(intake_path, dataset_ids) - { - const batchSize = 50; - for (let i = 0; i < dataset_ids.length; i += batchSize) { - const batch = dataset_ids.slice(i, i + batchSize).toString(); - let result = await Yoda.call('intake_lock_dataset', {"path": intake_path, "dataset_ids": batch }); - console.log(result); - if (result.proc_status!='OK') { - alert(result.error_msg); - reload_page_with_alert('2'); - return; - } -  } - reload_page_with_alert('1'); - } - - async function handleUnlockingAndAlerts(intake_path, dataset_ids) - { - const batchSize = 50; - for (let i = 0; i < dataset_ids.length; i += batchSize) { - const batch = dataset_ids.slice(i, i + batchSize).toString(); - let result = await Yoda.call('intake_unlock_dataset', {"path": intake_path, "dataset_ids": batch }); - console.log(result); - if (result.proc_status!='OK') { - alert(result.error_msg); - reload_page_with_alert('4'); - return; - } -  } - reload_page_with_alert('3'); - } - - function addCommentToDataset(studyId, table, datasetId, comment) - { - if(comment.length==0){ - alert('Please enter a comment first.'); - } - else{ - Yoda.call('intake_dataset_add_comment', - {"study_id": studyId, - "dataset_id": datasetId, - "comment": comment}).then((data) => { - console.log(data); - $('tr:last', table).before( - '' + $('
    ').text(data.user).html() - + '' + $('
    ').text(data.timestamp).html() - + '' + $('
    ').text(data.comment).html() - + '' - ); - $('input[name="comments"]', table).val(''); - }) - - return; - - $.post( - Yoda.baseUrl + ['intake','saveDatasetComment'].join('/'), - { "studyID": study, - "datasetID":datasetId, - "comment": comment, - "csrf_yoda": csrf_key - }, - function (data) { - if(!data.hasError){ - console.log(data); - $('tr:last', table).before( - '' + $('
    ').text(data.output.user).html() - + '' + $('
    ').text(data.output.timestamp).html() - + '' + $('
    ').text(data.output.comment).html() - + '' - ); - $('input[name="comments"]', table).val(''); - } - else{ - alert('Your comment could not be processed. Please try again.'); - } - } - ); - } - } - - $('#datatable').on('keypress', 'input[name="comments"]', function(e) { - if (e.which == 13) { - var study = $('#studyID').val(); - var table = $(this).closest('table'); - var datasetId = table.data('dataset-id'); - var comment = $(this).val(); - - addCommentToDataset(study, table, datasetId, comment); - return false; - } - }); - - $('#datatable').on('click', '.btn-add-comment', function(e) { - var study = $('#studyID').val(); - var table = $(this).closest('table'); - var datasetId = table.data('dataset-id'); - var comment = $('input[name="comments"]', table).val(); - - addCommentToDataset(study, table, datasetId, comment); - }); - - // hiding of alert panel - $("[data-hide]").on("click", function(){ - $(this).closest("." + $(this).attr("data-hide")).hide(); - }); - - $('#datatable_unrecognised tbody').on('click', 'tr', function () { - var bodyText = $(this).data('path'); - if(bodyText) { - informDialog($(this).data('error'), bodyText); - } - }); - - $('#select-study tr').on('click', function (){ - document.location = $(this).data('study-url'); - }); - $('#select-study-folder tr').on('click', function (){ - document.location = $(this).data('study-folder-url'); - }); - - msg = '' - // Alert Handling after reload - if (alertNr=='1') { - msg = 'Successfully locked the selected dataset(s).'; - alertType = 'success'; - } - else if (alertNr=='2') { - msg = 'There was a problem locking the selected dataset(s).'; - alertType = 'danger'; - } - else if (alertNr=='3') { - msg = 'Successfully unlocked the selected dataset(s).'; - alertType = 'success'; - } - else if (alertNr=='4') { - msg = 'There was a problem unlocking the selected dataset(s)'; - alertType = 'danger'; - } - else if (alertNr=='5') { - msg = 'Successfully scanned for datasets.'; - alertType = 'success'; - } - else if (alertNr=='6') { - msg = 'There was a problem during the scanning process.'; - alertType = 'danger'; - } - - if (msg.length) { - $('#messages').html('
    ' + msg + '
    '); - } - - console.log($("#studyID").val()) - console.log($("#studyFolder").val()); - console.log(window.location.origin); - console.log(window.location.pathname); - -}); - -function reload_page_with_alert(alertNr) { - console.log($("#studyID").val()) - console.log($("#studyFolder").val()); - var studyID = $("#studyID").val(), - studyFolder= $("#studyFolder").val(); - - // bring back to study-id alone without group qualification - parts = studyID.split('-'); - // take last only to get to study - params = '?studyID=' + parts[parts.length-1] - if (studyFolder) { - params += '&studyFolder=' + studyFolder; - } - window.location.replace(window.location.origin + window.location.pathname + params + '&alertNr=' + alertNr); -} - -function datasetRowClickForDetails(obj, mainTable) -{ - var tr = obj.closest('tr'); - var row = mainTable.row( tr ); - - if ( row.child.isShown() ) { - // This row is already open - close it - row.child.hide(); - tr.removeClass('shown'); - } - else { - // Open this row - var tbl_id = tr.data('row-id'), - url = Yoda.baseUrl + ['intake','getDatasetDetailView'].join('/'), - csrf_key = $('input[name="csrf_yoda"]').val(); - - //return; - // - // "csrf_token": Yoda.csrf.tokenValue - url = 'getDatasetDetailView' - $.post( - url, - { tbl_id: tbl_id, - path: tr.data('ref-path'), - studyID: $('#studyID').val(), - datasetID: tr.data('dataset-id'), -// csrf_yoda: csrf_key, - "csrf_token": Yoda.csrf.tokenValue - }, - function (data) { - if(!data.hasError){ - html_tree = data.output; - - row.child( html_tree ).show(); - - $("#tree"+tbl_id).treetable({ - expandable: true - }); - $("#tree"+tbl_id).treetable("expandAll"); - - tr.addClass('shown'); - } - } - ); - } -} - -function inProgressStart(progressText) -{ - $('.progress_indicator h1').text(progressText); - $('.progress_indicator').show(); -} - -function inProgressEnd() -{ - $('.progress_indicator').hide(); -} - -function informationPanel(alertClass, message) -{ - $('.alert').removeClass('alert-danger').removeClass('alert-success').addClass('alert-'+alertClass); - $('.alert .info_text').text(message); - $('.alert').show(); -} - -function informDialog(title, bodytext) -{ - var modal = $('#dialog-ok'); - - $('.modal-header h3', modal).text(title); - $('.modal-body .item', modal).text(bodytext); - - modal.modal('show'); -} - -function modalDialog(title, url) -{ - var modal = $('#select-generic-modal'), - iframeDocument = $('iframe', modal).get(0).contentWindow.document; - - $('.modal-header h3', modal).text(title); - - iframeDocument.location.href = url; - - $('.modal-body iframe', modal).show(); - $('#select-generic-modal').modal('show'); -} - -async function get_studies() -{ - let result = await Yoda.call('intake_list_studies', {}); - console.log(result); -} - -async function get_studies_dm() -{ - let result = await Yoda.call('intake_list_dm_studies', {}); - console.log(result); -} - -async function get_datasets(coll) -{ - let result = await Yoda.call('intake_list_datasets', - { - coll: Yoda.basePath + '/' + 'grp-intake-initial' - }) - - console.log(result); -} - - -async function get_unrecognized_files(coll) -{ - let result = await Yoda.call('intake_list_unrecognized_files', - { - coll: Yoda.basePath + '/' + 'grp-intake-initial' - }) - - console.log(result); -} diff --git a/intake/static/intake/scripts/controllers/intake_tree.js b/intake/static/intake/scripts/controllers/intake_tree.js deleted file mode 100644 index 8a702f2b..00000000 --- a/intake/static/intake/scripts/controllers/intake_tree.js +++ /dev/null @@ -1,66 +0,0 @@ -$(function() { - $("#youthdata-intake-tree").treetable({ - expandable: true - }); - - $('#btn-meta-data').on('click', function (){ - var path = $('#helper').text(); - getMetaDataOnPath( path ); - }); - - $("#youthdata-intake-tree tbody").on("mousedown", "tr", function() { - - var strNode = $(this).attr('data-tt-id'); - - $('#helper').text( getFullPathOnNode(strNode) ); - - }); -}); - -function getMetaDataOnPath(strPath){ - var url = 'https://localhost/uu/yodaportal/intake/getMetaData'; - - $.post( - url, - {path:strPath}, - function (data) { - if(!data.hasError){ - var strMeta=''; - if(data.allMetaData.length){ - for(i=0;i '+data.allMetaData[i]['value']+'\n'; - } - alert(strMeta); - } - } - else{ - alert('error'); - } - } - ); -} - -function getFullPathOnNode(strNode){ - var arNodes = strNode.split(".") - ,strPath='' - ,home_dir = $('#home-dir').text() - ,nodeId=''; - - for(i=1; i0){ - nodeId += '.'+ arNodes[n]; - }else{ - nodeId = arNodes[n] - } - } - - var tableRow = $("#youthdata-intake-tree tbody tr").filter(function() { - return $(this).attr('data-tt-id') == nodeId; - }); - - strPath += '/' + tableRow.attr('data-target'); - } - return home_dir + strPath; -} diff --git a/intake/static/intake/scripts/controllers/main.js b/intake/static/intake/scripts/controllers/main.js deleted file mode 100644 index 7878b114..00000000 --- a/intake/static/intake/scripts/controllers/main.js +++ /dev/null @@ -1,15 +0,0 @@ -$(function() { - $( ".datepicker" ).datepicker(); - - // Modal - delete - $('#confirm-delete').on('show.bs.modal', function(e) { - var item = $(e.relatedTarget).attr('value'); - $(this).find('.item').text(item); - - var url = $(e.relatedTarget).attr('data-url'); - if (url) - { - $(this).find('.btn-ok').attr('href', url); - } - }); -}); diff --git a/intake/static/intake/scripts/controllers/reports.js b/intake/static/intake/scripts/controllers/reports.js deleted file mode 100755 index 003c8bd7..00000000 --- a/intake/static/intake/scripts/controllers/reports.js +++ /dev/null @@ -1,9 +0,0 @@ -$(function() { - $('#select-study tr').on('click', function (){ - document.location = $(this).data('study-url'); - }); - - $('#export-data').on('click', function (){ - alert('This is not implemented yet.'); - }); -}); diff --git a/intake/static/intake/scripts/dataTables.bootstrap.js b/intake/static/intake/scripts/dataTables.bootstrap.js deleted file mode 100644 index e7781df6..00000000 --- a/intake/static/intake/scripts/dataTables.bootstrap.js +++ /dev/null @@ -1,185 +0,0 @@ -/*! DataTables Bootstrap 3 integration - * ©2011-2014 SpryMedia Ltd - datatables.net/license - */ - -/** - * DataTables integration for Bootstrap 3. This requires Bootstrap 3 and - * DataTables 1.10 or newer. - * - * This file sets the defaults and adds options to DataTables to style its - * controls using Bootstrap. See http://datatables.net/manual/styling/bootstrap - * for further information. - */ -(function(window, document, undefined){ - -var factory = function( $, DataTable ) { -"use strict"; - - -/* Set the defaults for DataTables initialisation */ -$.extend( true, DataTable.defaults, { - dom: - "<'row'<'col-sm-6'l><'col-sm-6'f>>" + - "<'row'<'col-sm-12'tr>>" + - "<'row'<'col-sm-6'i><'col-sm-6'p>>", - renderer: 'bootstrap' -} ); - - -/* Default class modification */ -$.extend( DataTable.ext.classes, { - sWrapper: "dataTables_wrapper dt-bootstrap", - sFilterInput: "form-control input-sm", - sLengthSelect: "form-control input-sm" -} ); - - -/* Bootstrap paging button renderer */ -DataTable.ext.renderer.pageButton.bootstrap = function ( settings, host, idx, buttons, page, pages ) { - var api = new DataTable.Api( settings ); - var classes = settings.oClasses; - var lang = settings.oLanguage.oPaginate; - var btnDisplay, btnClass; - - var attach = function( container, buttons ) { - var i, ien, node, button; - var clickHandler = function ( e ) { - e.preventDefault(); - if ( !$(e.currentTarget).hasClass('disabled') ) { - api.page( e.data.action ).draw( false ); - } - }; - - for ( i=0, ien=buttons.length ; i 0 ? - '' : ' disabled'); - break; - - case 'previous': - btnDisplay = lang.sPrevious; - btnClass = button + (page > 0 ? - '' : ' disabled'); - break; - - case 'next': - btnDisplay = lang.sNext; - btnClass = button + (page < pages-1 ? - '' : ' disabled'); - break; - - case 'last': - btnDisplay = lang.sLast; - btnClass = button + (page < pages-1 ? - '' : ' disabled'); - break; - - default: - btnDisplay = button + 1; - btnClass = page === button ? - 'active' : ''; - break; - } - - if ( btnDisplay ) { - node = $('
  1. ', { - 'class': classes.sPageButton+' '+btnClass, - 'aria-controls': settings.sTableId, - 'tabindex': settings.iTabIndex, - 'id': idx === 0 && typeof button === 'string' ? - settings.sTableId +'_'+ button : - null - } ) - .append( $('', { - 'href': '#' - } ) - .html( btnDisplay ) - ) - .appendTo( container ); - - settings.oApi._fnBindAction( - node, {action: button}, clickHandler - ); - } - } - } - }; - - attach( - $(host).empty().html('
      ').children('ul'), - buttons - ); -}; - - -/* - * TableTools Bootstrap compatibility - * Required TableTools 2.1+ - */ -if ( DataTable.TableTools ) { - // Set the classes that TableTools uses to something suitable for Bootstrap - $.extend( true, DataTable.TableTools.classes, { - "container": "DTTT btn-group", - "buttons": { - "normal": "btn btn-default", - "disabled": "disabled" - }, - "collection": { - "container": "DTTT_dropdown dropdown-menu", - "buttons": { - "normal": "", - "disabled": "disabled" - } - }, - "print": { - "info": "DTTT_print_info" - }, - "select": { - "row": "active" - } - } ); - - // Have the collection use a bootstrap compatible drop down - $.extend( true, DataTable.TableTools.DEFAULTS.oTags, { - "collection": { - "container": "ul", - "button": "li", - "liner": "a" - } - } ); -} - -}; // /factory - - -// Define as an AMD module if possible -if ( typeof define === 'function' && define.amd ) { - define( ['jquery', 'datatables'], factory ); -} -else if ( typeof exports === 'object' ) { - // Node/CommonJS - factory( require('jquery'), require('datatables') ); -} -else if ( jQuery ) { - // Otherwise simply initialise as normal, stopping multiple evaluation - factory( jQuery, jQuery.fn.dataTable ); -} - - -})(window, document); diff --git a/intake/static/intake/scripts/dataTables.bootstrapPagination-3.js b/intake/static/intake/scripts/dataTables.bootstrapPagination-3.js deleted file mode 100644 index 52dabcf6..00000000 --- a/intake/static/intake/scripts/dataTables.bootstrapPagination-3.js +++ /dev/null @@ -1,117 +0,0 @@ -/* API method to get paging information */ -$.fn.dataTableExt.oApi.fnPagingInfo = function ( oSettings ) -{ - return { - "iStart": oSettings._iDisplayStart, - "iEnd": oSettings.fnDisplayEnd(), - "iLength": oSettings._iDisplayLength, - "iTotal": oSettings.fnRecordsTotal(), - "iFilteredTotal": oSettings.fnRecordsDisplay(), - "iPage": oSettings._iDisplayLength === -1 ? - 0 : Math.ceil( oSettings._iDisplayStart / oSettings._iDisplayLength ), - "iTotalPages": oSettings._iDisplayLength === -1 ? - 0 : Math.ceil( oSettings.fnRecordsDisplay() / oSettings._iDisplayLength ) - }; -} - -/* Bootstrap style pagination control */ -$.extend( $.fn.dataTableExt.oPagination, { - "bootstrap": { - "fnInit": function( oSettings, nPaging, fnDraw ) { - var oLang = oSettings.oLanguage.oPaginate; - var fnClickHandler = function ( e ) { - e.preventDefault(); - if ( oSettings.oApi._fnPageChange(oSettings, e.data.action) ) { - fnDraw( oSettings ); - } - }; - - $(nPaging).append( - '' - ); - var els = $('a', nPaging); - $(els[0]).bind( 'click.DT', { action: "previous" }, fnClickHandler ); - $(els[1]).bind( 'click.DT', { action: "next" }, fnClickHandler ); - }, - - "fnUpdate": function ( oSettings, fnDraw ) { - var iListLength = 5; - var oPaging = oSettings.oInstance.fnPagingInfo(); - var an = oSettings.aanFeatures.p; - var i, j, sClass, iStart, iEnd, iHalf=Math.floor(iListLength/2); - - if ( oPaging.iTotalPages < iListLength) { - iStart = 1; - iEnd = oPaging.iTotalPages; - } - else if ( oPaging.iPage <= iHalf ) { - iStart = 1; - iEnd = iListLength; - } else if ( oPaging.iPage >= (oPaging.iTotalPages-iHalf) ) { - iStart = oPaging.iTotalPages - iListLength + 1; - iEnd = oPaging.iTotalPages; - } else { - iStart = oPaging.iPage - iHalf + 1; - iEnd = iStart + iListLength - 1; - } - - for ( i=0, iLen=an.length ; i'+j+'') - .insertBefore( $('li:last', an[i])[0] ) - .bind('click', function (e) { - e.preventDefault(); - oSettings._iDisplayStart = (parseInt($('a', this).text(),10)-1) * oPaging.iLength; - fnDraw( oSettings ); - } ); - } - - // Add / remove disabled classes from the static elements - if ( oPaging.iPage === 0 ) { - $('li:first', an[i]).addClass('disabled'); - } else { - $('li:first', an[i]).removeClass('disabled'); - } - - if ( oPaging.iPage === oPaging.iTotalPages-1 || oPaging.iTotalPages === 0 ) { - $('li:last', an[i]).addClass('disabled'); - } else { - $('li:last', an[i]).removeClass('disabled'); - } - } - } - } -} ); - -$(function(){ - $('.datatable').each(function(){ - var datatable = $(this); - // SEARCH - Add the placeholder for Search and Turn this into in-line formcontrol - var search_input = datatable.closest('.dataTables_wrapper').find('div[id$=_filter] input'); - search_input.attr('placeholder', 'Search') - search_input.addClass('form-control input-small') - search_input.css('width', '250px') - - // SEARCH CLEAR - Use an Icon - var clear_input = datatable.closest('.dataTables_wrapper').find('div[id$=_filter] a'); - clear_input.html('') - clear_input.css('margin-left', '5px') - - // LENGTH - Inline-Form control - var length_sel = datatable.closest('.dataTables_wrapper').find('div[id$=_length] select'); - length_sel.addClass('form-control input-small') - length_sel.css('width', '75px') - - // LENGTH - Info adjust location - var length_sel = datatable.closest('.dataTables_wrapper').find('div[id$=_info]'); - length_sel.css('margin-top', '18px') - }); -}); diff --git a/intake/static/intake/scripts/datatables/intake_overview.js b/intake/static/intake/scripts/datatables/intake_overview.js deleted file mode 100644 index dddf6824..00000000 --- a/intake/static/intake/scripts/datatables/intake_overview.js +++ /dev/null @@ -1,153 +0,0 @@ -$(document).ready(function() { - var mainTable = $('#datatable').DataTable({ - "stateSave":true, - "language": { - "sEmptyTable": "No data found", - "sInfo": "Total datasets: _TOTAL_", - "sInfoEmpty": "No datasets present", - "sLoadingRecords": "Loading...", - "sProcessing": "Processing...", - "sSearch": "Search", - "sZeroRecords": "No data found", - "oPaginate": { - "sFirst": "First", - "sLast": "Last", - "sNext": "Next", - "sPrevious": "Previous" - } - }, - "bSort": [], - "columns": [ - { "data": "user"}, - { - "data": null, - "orderable": false, - "defaultContent": '' - }, - { - "className": 'details-control', - "orderable": false, - "data": null, - "defaultContent": '' - }, - { "data": "date" }, - { "data": "pseudo" }, - { "data": "type" }, - { "data": "wave" }, - { "data": "version" }, - { "data": "file_count" }, - { "data": "minfo" }, - { "data": "comment" }, - { "data": "status" }, - { "data": "creator" } - ], - "iDisplayLength": 50, - "bPaginate": false, - "bLengthChange": false, - "bFilter": false, - "columnDefs": [ - { "visible": false, "targets": 0 }, - { "type": "alt-string", "targets": 3 } - ], - "drawCallback": function ( settings ) { - var api = this.api(); - var rows = api.rows( ).nodes(); //{page:'current'} - var last=null; - - api.column(0).data().each( function ( group, i ) { - if ( last !== group ) { - groupname = '
      Scanned datasets'; - chbtext = ''; - if(group=='LOCKED'){ - groupname= '
      Submitted for transportation to vault - can be undone'; - chbtext = ' '; - } - if(group=='FROZEN'){ - groupname='
      Frozen for transportation to vault - cannot be undone'; - } - //$(rows).eq( i ).before( - // '' + chbtext + '' + groupname + '' - //); - - last = group; - } - }); - - // Required as every time page changes, this effect was lost. - $('.cbDataSet').on('click', function (event){ - event.stopPropagation(); - handleVaultButtonStatus(); - }); - - }, - "order": [[ 3, "desc" ]], - "sDom": "<'row'<'col-sm-6'T><'col-sm-6'f>r>t<'row'<'col-sm-6'i><'col-sm-6'p>>", - "sPaginationType": "bootstrap", - "fnInitComplete": function(oSettings, json) { - //$('.dataTables_info span').text($('#totalSignups').text()); - } - }); - - $('#datatable tbody tr .cbDataSet').each(function(){ - if($(this).parent().parent().data('error-count')){ - $(this).parent().html(''); - } - }); - - // remove the checkboxes from columns that hold frozen datasets - $('tr[data-target="FROZEN"] .cbDataSet').parent().html(''); - - - $('#datatable tbody').on('click', 'tr', function () { - datasetRowClickForDetails($(this), mainTable); - }); - - // 1) prevent opening of dataset details when clicking on row. - // 2) enable lock/unlock buttons as to make the relation between the checkboxes and buttons more evident - $('.cbDataSet').on('click', function (event){ - event.stopPropagation(); - handleVaultButtonStatus(); - }); - - // 1) check all checkboxes belonging to the group - // 2) lock/unlock buttons as to make the relation between the checkboxes and buttons more evident - $('#datatable tbody tr .group').on('click', function (){ - $('#datatable tbody tr[data-target="'+$(this).data('target')+'"] .cbDataSet').prop('checked',$(this).prop('checked')); - handleVaultButtonStatus(); - }); - - $('.control-all-cbDataSets').on('click', function (){ - $('.cbDataSet').prop('checked',$(this).prop('checked')); - handleVaultButtonStatus(); - }); - - // Initialize buttons - $('#btn-lock').prop('disabled', true).addClass('disabled'); - $('#btn-unlock').prop('disabled', true).addClass('disabled'); -} ); - -function handleVaultButtonStatus() -{ - // if no checkbox selected disable the buttons - var anyChecked=false; - $('.cbDataSet').each(function(){ - if($(this).prop('checked')){ - anyChecked=true; - return false; - } - }); - - if(anyChecked){ - //$('#btn-lock').prop('disabled', false); -// $('#btn-lock').prop('disabled', false).removeClass('btn-default').removeClass('disabled').addClass('btn-primary'); -// $('#btn-unlock').prop('disabled', false).removeClass('btn-default').removeClass('disabled').addClass('btn-warning'); - $('#btn-lock').prop('disabled', false).addClass('btn-info').removeClass('disabled'); //.removeClass('btn-default').addClass('btn-primary'); - $('#btn-unlock').prop('disabled', false).addClass('btn-warning').removeClass('disabled'); //.removeClass('btn-default').addClass('btn-warning'); - } - else{ - // $('#btn-lock').prop('disabled', true).removeClass('btn-primary').addClass('disabled').addClass('btn-default'); - // $('#btn-unlock').prop('disabled', true).removeClass('btn-warning').addClass('disabled').addClass('btn-default'); - $('#btn-lock').prop('disabled', true).removeClass('btn-info').addClass('disabled'); //.removeClass('btn-primary').addClass('btn-default'); - $('#btn-unlock').prop('disabled', true).removeClass('btn-warning').addClass('disabled');// .removeClass('btn-warning').addClass('btn-default'); - } -} diff --git a/intake/static/intake/scripts/datatables/intake_overview_assistant.js b/intake/static/intake/scripts/datatables/intake_overview_assistant.js deleted file mode 100644 index 8c6457b0..00000000 --- a/intake/static/intake/scripts/datatables/intake_overview_assistant.js +++ /dev/null @@ -1,84 +0,0 @@ -$(document).ready(function() { - var mainTable = $('#datatable').DataTable({ - "stateSave":true, - "language": { - "sEmptyTable": "No data found", - "sInfo": "Total datasets: _TOTAL_", - "sInfoEmpty": "No datasets present", - "sLoadingRecords": "Loading...", - "sProcessing": "Processing...", - "sSearch": "Search", - "sZeroRecords": "No data found", - "oPaginate": { - "sFirst": "First", - "sLast": "Last", - "sNext": "Next", - "sPrevious": "Previous" - } - }, - "bSort": [], - "columns": [ - { "data": "user"}, - { - "className": 'details-control', - "orderable": false, - "data": null, - "defaultContent": '' - }, - { "data": "date" }, - { "data": "pseudo" }, - { "data": "type" }, - { "data": "wave" }, - { "data": "version" }, - { "data": "file_count" }, - { "data": "minfo" }, - { "data": "comment" }, - { "data": "status" }, - { "data": "creator" } - ], - "iDisplayLength": 50, - "bPaginate": false, - "bLengthChange": false, - "bFilter": false, - "columnDefs": [ - { "visible": false, "targets": 0 }, - { "type": "alt-string", "targets": 2 } - ], - "drawCallback": function ( settings ) { - var api = this.api(); - var rows = api.rows( ).nodes(); //{page:'current'} - var last=null; - - api.column(0).data().each( function ( group, i ) { - if ( last !== group ) { - groupname = '
      Scanned datasets'; - if(group=='LOCKED'){ - groupname= '
      Submitted for transportation to vault - can be undone'; - } - if(group=='FROZEN'){ - groupname='
      Frozen for transportation to vault - cannot be undone'; - } - //$(rows).eq( i ).before( - // '' + ' ' + groupname + '' - //); - - last = group; - } - }); - }, - "order": [[ 2, "desc" ]], - "sDom": "<'row'<'col-sm-6'T><'col-sm-6'f>r>t<'row'<'col-sm-6'i><'col-sm-6'p>>", - "sPaginationType": "bootstrap", - "fnInitComplete": function(oSettings, json) { - //$('.dataTables_info span').text($('#totalSignups').text()); - } - }); - - $('#datatable tbody').on('click', 'tr', function () { - datasetRowClickForDetails($(this), mainTable); - }); - // prevent opening of dataset details when clicking on row. - $('.cbDataSet').on('click', function (event){ - event.stopPropagation(); - }); -} ); diff --git a/intake/static/intake/scripts/datatables/plugin_sort_on_image.js b/intake/static/intake/scripts/datatables/plugin_sort_on_image.js deleted file mode 100644 index 1624ddfb..00000000 --- a/intake/static/intake/scripts/datatables/plugin_sort_on_image.js +++ /dev/null @@ -1,19 +0,0 @@ -/* -This plugin is derived from http://cdn.datatables.net/plug-ins/1.10.6/sorting/alt-string.js -It makes sorting on the title of an html element possible. -In this case the div's that reside in the cells of a table column. - */ - -jQuery.extend( jQuery.fn.dataTableExt.oSort, { - "alt-string-pre": function ( a ) { - return a.match(/title="(.*?)"/)[1].toLowerCase(); - }, - - "alt-string-asc": function( a, b ) { - return ((a < b) ? -1 : ((a > b) ? 1 : 0)); - }, - - "alt-string-desc": function(a,b) { - return ((a < b) ? 1 : ((a > b) ? -1 : 0)); - } -}); diff --git a/intake/static/intake/scripts/jquery.dataTables.min.js b/intake/static/intake/scripts/jquery.dataTables.min.js deleted file mode 100644 index 2c64e9ce..00000000 --- a/intake/static/intake/scripts/jquery.dataTables.min.js +++ /dev/null @@ -1,158 +0,0 @@ -/*! DataTables 1.10.5 - * ©2008-2015 SpryMedia Ltd - datatables.net/license - */ -(function(Ea,P,k){var O=function(h){function V(a){var b,c,e={};h.each(a,function(d){if((b=d.match(/^([^A-Z]+?)([A-Z])/))&&-1!=="a aa ai ao as b fn i m o s ".indexOf(b[1]+" "))c=d.replace(b[0],b[2].toLowerCase()),e[c]=d,"o"===b[1]&&V(a[d])});a._hungarianMap=e}function H(a,b,c){a._hungarianMap||V(a);var e;h.each(b,function(d){e=a._hungarianMap[d];if(e!==k&&(c||b[e]===k))"o"===e.charAt(0)?(b[e]||(b[e]={}),h.extend(!0,b[e],b[d]),H(a[e],b[e],c)):b[e]=b[d]})}function O(a){var b=o.defaults.oLanguage,c=a.sZeroRecords; -!a.sEmptyTable&&(c&&"No data available in table"===b.sEmptyTable)&&E(a,a,"sZeroRecords","sEmptyTable");!a.sLoadingRecords&&(c&&"Loading..."===b.sLoadingRecords)&&E(a,a,"sZeroRecords","sLoadingRecords");a.sInfoThousands&&(a.sThousands=a.sInfoThousands);(a=a.sDecimal)&&db(a)}function eb(a){A(a,"ordering","bSort");A(a,"orderMulti","bSortMulti");A(a,"orderClasses","bSortClasses");A(a,"orderCellsTop","bSortCellsTop");A(a,"order","aaSorting");A(a,"orderFixed","aaSortingFixed");A(a,"paging","bPaginate"); -A(a,"pagingType","sPaginationType");A(a,"pageLength","iDisplayLength");A(a,"searching","bFilter");if(a=a.aoSearchCols)for(var b=0,c=a.length;b").css({position:"absolute",top:0,left:0,height:1,width:1,overflow:"hidden"}).append(h("
      ").css({position:"absolute",top:1,left:1,width:100, -overflow:"scroll"}).append(h('
      ').css({width:"100%",height:10}))).appendTo("body"),c=b.find(".test");a.bScrollOversize=100===c[0].offsetWidth;a.bScrollbarLeft=1!==c.offset().left;b.remove()}function hb(a,b,c,e,d,f){var g,j=!1;c!==k&&(g=c,j=!0);for(;e!==d;)a.hasOwnProperty(e)&&(g=j?b(g,a[e],e,a):a[e],j=!0,e+=f);return g}function Fa(a,b){var c=o.defaults.column,e=a.aoColumns.length,c=h.extend({},o.models.oColumn,c,{nTh:b?b:P.createElement("th"),sTitle:c.sTitle?c.sTitle:b?b.innerHTML: -"",aDataSort:c.aDataSort?c.aDataSort:[e],mData:c.mData?c.mData:e,idx:e});a.aoColumns.push(c);c=a.aoPreSearchCols;c[e]=h.extend({},o.models.oSearch,c[e]);ka(a,e,h(b).data())}function ka(a,b,c){var b=a.aoColumns[b],e=a.oClasses,d=h(b.nTh);if(!b.sWidthOrig){b.sWidthOrig=d.attr("width")||null;var f=(d.attr("style")||"").match(/width:\s*(\d+[pxem%]+)/);f&&(b.sWidthOrig=f[1])}c!==k&&null!==c&&(fb(c),H(o.defaults.column,c),c.mDataProp!==k&&!c.mData&&(c.mData=c.mDataProp),c.sType&&(b._sManualType=c.sType), -c.className&&!c.sClass&&(c.sClass=c.className),h.extend(b,c),E(b,c,"sWidth","sWidthOrig"),"number"===typeof c.iDataSort&&(b.aDataSort=[c.iDataSort]),E(b,c,"aDataSort"));var g=b.mData,j=W(g),i=b.mRender?W(b.mRender):null,c=function(a){return"string"===typeof a&&-1!==a.indexOf("@")};b._bAttrSrc=h.isPlainObject(g)&&(c(g.sort)||c(g.type)||c(g.filter));b.fnGetData=function(a,b,c){var e=j(a,b,k,c);return i&&b?i(e,b,a,c):e};b.fnSetData=function(a,b,c){return Q(g)(a,b,c)};"number"!==typeof g&&(a._rowReadObject= -!0);a.oFeatures.bSort||(b.bSortable=!1,d.addClass(e.sSortableNone));a=-1!==h.inArray("asc",b.asSorting);c=-1!==h.inArray("desc",b.asSorting);!b.bSortable||!a&&!c?(b.sSortingClass=e.sSortableNone,b.sSortingClassJUI=""):a&&!c?(b.sSortingClass=e.sSortableAsc,b.sSortingClassJUI=e.sSortJUIAscAllowed):!a&&c?(b.sSortingClass=e.sSortableDesc,b.sSortingClassJUI=e.sSortJUIDescAllowed):(b.sSortingClass=e.sSortable,b.sSortingClassJUI=e.sSortJUI)}function X(a){if(!1!==a.oFeatures.bAutoWidth){var b=a.aoColumns; -Ga(a);for(var c=0,e=b.length;cp[f])e(l.length+p[f],m);else if("string"===typeof p[f]){j=0;for(i=l.length;jb&&a[d]--; -1!=e&&c===k&&a.splice(e,1)}function ca(a,b,c,e){var d=a.aoData[b],f,g=function(c,f){for(;c.childNodes.length;)c.removeChild(c.firstChild);c.innerHTML=y(a,b,f,"display")};if("dom"===c||(!c||"auto"===c)&&"dom"===d.src)d._aData=na(a,d,e,e===k?k:d._aData).data;else{var j=d.anCells;if(j)if(e!==k)g(j[e],e);else{c=0;for(f=j.length;c").appendTo(g));b=0;for(c=l.length;btr").attr("role","row");h(g).find(">tr>th, >tr>td").addClass(m.sHeaderTH); -h(j).find(">tr>th, >tr>td").addClass(m.sFooterTH);if(null!==j){a=a.aoFooter[0];b=0;for(c=a.length;b=a.fnRecordsDisplay()?0:g,a.iInitDisplayStart=-1);var g=a._iDisplayStart,m=a.fnDisplayEnd();if(a.bDeferLoading)a.bDeferLoading=!1,a.iDraw++,C(a,!1);else if(j){if(!a.bDestroying&&!kb(a))return}else a.iDraw++;if(0!==i.length){f=j?a.aoData.length:m;for(j=j?0:g;j",{"class":d?e[0]:""}).append(h("",{valign:"top",colSpan:aa(a),"class":a.oClasses.sRowEmpty}).html(c))[0];w(a,"aoHeaderCallback","header",[h(a.nTHead).children("tr")[0],La(a),g,m,i]);w(a,"aoFooterCallback","footer",[h(a.nTFoot).children("tr")[0],La(a),g,m,i]);e=h(a.nTBody);e.children().detach();e.append(h(b));w(a,"aoDrawCallback","draw",[a]);a.bSorted=!1;a.bFiltered=!1;a.bDrawing= -!1}}function N(a,b){var c=a.oFeatures,e=c.bFilter;c.bSort&&lb(a);e?fa(a,a.oPreviousSearch):a.aiDisplay=a.aiDisplayMaster.slice();!0!==b&&(a._iDisplayStart=0);a._drawHold=b;M(a);a._drawHold=!1}function mb(a){var b=a.oClasses,c=h(a.nTable),c=h("
      ").insertBefore(c),e=a.oFeatures,d=h("
      ",{id:a.sTableId+"_wrapper","class":b.sWrapper+(a.nTFoot?"":" "+b.sNoFooter)});a.nHolding=c[0];a.nTableWrapper=d[0];a.nTableReinsertBefore=a.nTable.nextSibling;for(var f=a.sDom.split(""),g,j,i,m,l,p,n=0;n")[0];m=f[n+1];if("'"==m||'"'==m){l="";for(p=2;f[n+p]!=m;)l+=f[n+p],p++;"H"==l?l=b.sJUIHeader:"F"==l&&(l=b.sJUIFooter);-1!=l.indexOf(".")?(m=l.split("."),i.id=m[0].substr(1,m[0].length-1),i.className=m[1]):"#"==l.charAt(0)?i.id=l.substr(1,l.length-1):i.className=l;n+=p}d.append(i);d=h(i)}else if(">"==j)d=d.parent();else if("l"==j&&e.bPaginate&&e.bLengthChange)g=nb(a);else if("f"==j&&e.bFilter)g=ob(a);else if("r"==j&&e.bProcessing)g=pb(a);else if("t"==j)g=qb(a);else if("i"== -j&&e.bInfo)g=rb(a);else if("p"==j&&e.bPaginate)g=sb(a);else if(0!==o.ext.feature.length){i=o.ext.feature;p=0;for(m=i.length;p',j=e.sSearch,j=j.match(/_INPUT_/)?j.replace("_INPUT_",g):j+g,b=h("
      ",{id:!f.f?c+"_filter":null,"class":b.sFilter}).append(h("
      ").addClass(b.sLength); -a.aanFeatures.l||(i[0].id=c+"_length");i.children().append(a.oLanguage.sLengthMenu.replace("_MENU_",d[0].outerHTML));h("select",i).val(a._iDisplayLength).bind("change.DT",function(){Ra(a,h(this).val());M(a)});h(a.nTable).bind("length.dt.DT",function(b,c,f){a===c&&h("select",i).val(f)});return i[0]}function sb(a){var b=a.sPaginationType,c=o.ext.pager[b],e="function"===typeof c,d=function(a){M(a)},b=h("
      ").addClass(a.oClasses.sPaging+b)[0],f=a.aanFeatures;e||c.fnInit(a,b,d);f.p||(b.id=a.sTableId+ -"_paginate",a.aoDrawCallback.push({fn:function(a){if(e){var b=a._iDisplayStart,h=a._iDisplayLength,m=a.fnRecordsDisplay(),l=-1===h,b=l?0:Math.ceil(b/h),h=l?1:Math.ceil(m/h),m=c(b,h),p,l=0;for(p=f.p.length;lf&&(e=0)):"first"==b?e=0:"previous"==b?(e=0<=d?e-d:0,0>e&&(e=0)):"next"== -b?e+d",{id:!a.aanFeatures.r?a.sTableId+"_processing":null,"class":a.oClasses.sProcessing}).html(a.oLanguage.sProcessing).insertBefore(a.nTable)[0]}function C(a,b){a.oFeatures.bProcessing&&h(a.aanFeatures.r).css("display",b?"block":"none");w(a,null,"processing",[a,b])}function qb(a){var b=h(a.nTable);b.attr("role", -"grid");var c=a.oScroll;if(""===c.sX&&""===c.sY)return a.nTable;var e=c.sX,d=c.sY,f=a.oClasses,g=b.children("caption"),j=g.length?g[0]._captionSide:null,i=h(b[0].cloneNode(!1)),m=h(b[0].cloneNode(!1)),l=b.children("tfoot");c.sX&&"100%"===b.attr("width")&&b.removeAttr("width");l.length||(l=null);c=h("
      ",{"class":f.sScrollWrapper}).append(h("
      ",{"class":f.sScrollHead}).css({overflow:"hidden",position:"relative",border:0,width:e?!e?null:s(e):"100%"}).append(h("
      ",{"class":f.sScrollHeadInner}).css({"box-sizing":"content-box", -width:c.sXInner||"100%"}).append(i.removeAttr("id").css("margin-left",0).append("top"===j?g:null).append(b.children("thead"))))).append(h("
      ",{"class":f.sScrollBody}).css({overflow:"auto",height:!d?null:s(d),width:!e?null:s(e)}).append(b));l&&c.append(h("
      ",{"class":f.sScrollFoot}).css({overflow:"hidden",border:0,width:e?!e?null:s(e):"100%"}).append(h("
      ",{"class":f.sScrollFootInner}).append(m.removeAttr("id").css("margin-left",0).append("bottom"===j?g:null).append(b.children("tfoot"))))); -var b=c.children(),p=b[0],f=b[1],n=l?b[2]:null;if(e)h(f).on("scroll.DT",function(){var a=this.scrollLeft;p.scrollLeft=a;l&&(n.scrollLeft=a)});a.nScrollHead=p;a.nScrollBody=f;a.nScrollFoot=n;a.aoDrawCallback.push({fn:Y,sName:"scrolling"});return c[0]}function Y(a){var b=a.oScroll,c=b.sX,e=b.sXInner,d=b.sY,f=b.iBarWidth,g=h(a.nScrollHead),j=g[0].style,i=g.children("div"),m=i[0].style,l=i.children("table"),i=a.nScrollBody,p=h(i),n=i.style,k=h(a.nScrollFoot).children("div"),q=k.children("table"),o=h(a.nTHead), -r=h(a.nTable),t=r[0],u=t.style,K=a.nTFoot?h(a.nTFoot):null,ha=a.oBrowser,w=ha.bScrollOversize,x,v,y,L,z,A=[],B=[],C=[],D,E=function(a){a=a.style;a.paddingTop="0";a.paddingBottom="0";a.borderTopWidth="0";a.borderBottomWidth="0";a.height=0};r.children("thead, tfoot").remove();z=o.clone().prependTo(r);x=o.find("tr");y=z.find("tr");z.find("th, td").removeAttr("tabindex");K&&(L=K.clone().prependTo(r),v=K.find("tr"),L=L.find("tr"));c||(n.width="100%",g[0].style.width="100%");h.each(qa(a,z),function(b,c){D= -la(a,b);c.style.width=a.aoColumns[D].sWidth});K&&G(function(a){a.style.width=""},L);b.bCollapse&&""!==d&&(n.height=p[0].offsetHeight+o[0].offsetHeight+"px");g=r.outerWidth();if(""===c){if(u.width="100%",w&&(r.find("tbody").height()>i.offsetHeight||"scroll"==p.css("overflow-y")))u.width=s(r.outerWidth()-f)}else""!==e?u.width=s(e):g==p.width()&&p.height()g-f&&(u.width=s(g))):u.width=s(g);g=r.outerWidth();G(E,y);G(function(a){C.push(a.innerHTML);A.push(s(h(a).css("width")))}, -y);G(function(a,b){a.style.width=A[b]},x);h(y).height(0);K&&(G(E,L),G(function(a){B.push(s(h(a).css("width")))},L),G(function(a,b){a.style.width=B[b]},v),h(L).height(0));G(function(a,b){a.innerHTML='
      '+C[b]+"
      ";a.style.width=A[b]},y);K&&G(function(a,b){a.innerHTML="";a.style.width=B[b]},L);if(r.outerWidth()i.offsetHeight||"scroll"==p.css("overflow-y")?g+f:g;if(w&&(i.scrollHeight>i.offsetHeight||"scroll"==p.css("overflow-y")))u.width= -s(v-f);(""===c||""!==e)&&R(a,1,"Possible column misalignment",6)}else v="100%";n.width=s(v);j.width=s(v);K&&(a.nScrollFoot.style.width=s(v));!d&&w&&(n.height=s(t.offsetHeight+f));d&&b.bCollapse&&(n.height=s(d),b=c&&t.offsetWidth>i.offsetWidth?f:0,t.offsetHeighti.clientHeight||"scroll"==p.css("overflow-y");ha="padding"+(ha.bScrollbarLeft?"Left":"Right");m[ha]=l?f+"px":"0px";K&&(q[0].style.width= -s(b),k[0].style.width=s(b),k[0].style[ha]=l?f+"px":"0px");p.scroll();if((a.bSorted||a.bFiltered)&&!a._drawHold)i.scrollTop=0}function G(a,b,c){for(var e=0,d=0,f=b.length,g,j;d"));j.find("tfoot th, tfoot td").css("width","");var q=j.find("tbody tr"),i=qa(a,j.find("thead")[0]);for(n=0;n").css("width",s(a)).appendTo(b||P.body),e=c[0].offsetWidth;c.remove();return e} -function Fb(a,b){var c=a.oScroll;if(c.sX||c.sY)c=!c.sX?c.iBarWidth:0,b.style.width=s(h(b).outerWidth()-c)}function Eb(a,b){var c=Gb(a,b);if(0>c)return null;var e=a.aoData[c];return!e.nTr?h("").html(y(a,c,b,"display"))[0]:e.anCells[b]}function Gb(a,b){for(var c,e=-1,d=-1,f=0,g=a.aoData.length;fe&&(e=c.length,d=f);return d}function s(a){return null===a?"0px":"number"==typeof a?0>a?"0px":a+"px":a.match(/\d$/)?a+"px":a}function Hb(){if(!o.__scrollbarWidth){var a= -h("

      ").css({width:"100%",height:200,padding:0})[0],b=h("

      ").css({position:"absolute",top:0,left:0,width:200,height:150,padding:0,overflow:"hidden",visibility:"hidden"}).append(a).appendTo("body"),c=a.offsetWidth;b.css("overflow","scroll");a=a.offsetWidth;c===a&&(a=b[0].clientWidth);b.remove();o.__scrollbarWidth=c-a}return o.__scrollbarWidth}function T(a){var b,c,e=[],d=a.aoColumns,f,g,j,i;b=a.aaSortingFixed;c=h.isPlainObject(b);var m=[];f=function(a){a.length&&!h.isArray(a[0])?m.push(a):m.push.apply(m, -a)};h.isArray(b)&&f(b);c&&b.pre&&f(b.pre);f(a.aaSorting);c&&b.post&&f(b.post);for(a=0;ad?1:0,0!==c)return"asc"===h.dir?c:-c;c=e[a];d=e[b];return cd?1:0}):h.sort(function(a,b){var c,g,h,j,i=m.length,k=f[a]._aSortData,o=f[b]._aSortData;for(h=0;hg?1:0})}a.bSorted=!0}function Jb(a){for(var b,c,e=a.aoColumns,d=T(a),a=a.oLanguage.oAria,f=0,g=e.length;f/g,"");var i=c.nTh;i.removeAttribute("aria-sort");c.bSortable&&(0d?d+1:3));d=0;for(f=e.length;dd?d+1:3))}a.aLastSort=e}function Ib(a,b){var c=a.aoColumns[b],e=o.ext.order[c.sSortDataType], -d;e&&(d=e.call(a.oInstance,a,b,$(a,b)));for(var f,g=o.ext.type.order[c.sType+"-pre"],h=0,i=a.aoData.length;h=e.length?[0,c[1]]:c)});h.extend(a.oPreviousSearch,Ab(d.search));b=0;for(c=d.columns.length;b=c&&(b=c-e);b-=b%e;if(-1===e||0>b)b=0;a._iDisplayStart=b}function Pa(a,b){var c=a.renderer,e=o.ext.renderer[b];return h.isPlainObject(c)&&c[b]?e[c[b]]||e._:"string"===typeof c?e[c]||e._:e._}function B(a){return a.oFeatures.bServerSide?"ssp":a.ajax||a.sAjaxSource?"ajax":"dom"}function Wa(a,b){var c=[],c=Mb.numbers_length,e=Math.floor(c/2);b<=c?c=U(0,b):a<=e?(c=U(0,c-2),c.push("ellipsis"),c.push(b-1)):(a>=b-1-e?c=U(b-(c-2),b):(c=U(a-1,a+2),c.push("ellipsis"),c.push(b-1)),c.splice(0,0,"ellipsis"), -c.splice(0,0,0));c.DT_el="span";return c}function db(a){h.each({num:function(b){return Aa(b,a)},"num-fmt":function(b){return Aa(b,a,Xa)},"html-num":function(b){return Aa(b,a,Ba)},"html-num-fmt":function(b){return Aa(b,a,Ba,Xa)}},function(b,c){x.type.order[b+a+"-pre"]=c;b.match(/^html\-/)&&(x.type.search[b+a]=x.type.search.html)})}function Nb(a){return function(){var b=[za(this[o.ext.iApiIndex])].concat(Array.prototype.slice.call(arguments));return o.ext.internal[a].apply(this,b)}}var o,x,t,r,u,Ya= -{},Ob=/[\r\n]/g,Ba=/<.*?>/g,ac=/^[\w\+\-]/,bc=/[\w\+\-]$/,Yb=RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\|\\$|\\^|\\-)","g"),Xa=/[',$\u00a3\u20ac\u00a5%\u2009\u202F]/g,I=function(a){return!a||!0===a||"-"===a?!0:!1},Pb=function(a){var b=parseInt(a,10);return!isNaN(b)&&isFinite(a)?b:null},Qb=function(a,b){Ya[b]||(Ya[b]=RegExp(va(b),"g"));return"string"===typeof a&&"."!==b?a.replace(/\./g,"").replace(Ya[b],"."):a},Za=function(a,b,c){var e="string"===typeof a;b&&e&&(a=Qb(a,b));c&&e&& -(a=a.replace(Xa,""));return I(a)||!isNaN(parseFloat(a))&&isFinite(a)},Rb=function(a,b,c){return I(a)?!0:!(I(a)||"string"===typeof a)?null:Za(a.replace(Ba,""),b,c)?!0:null},D=function(a,b,c){var e=[],d=0,f=a.length;if(c!==k)for(;d")[0],Zb=wa.textContent!==k,$b=/<.*?>/g;o=function(a){this.$=function(a,b){return this.api(!0).$(a,b)};this._=function(a,b){return this.api(!0).rows(a, -b).data()};this.api=function(a){return a?new t(za(this[x.iApiIndex])):new t(this)};this.fnAddData=function(a,b){var c=this.api(!0),e=h.isArray(a)&&(h.isArray(a[0])||h.isPlainObject(a[0]))?c.rows.add(a):c.row.add(a);(b===k||b)&&c.draw();return e.flatten().toArray()};this.fnAdjustColumnSizing=function(a){var b=this.api(!0).columns.adjust(),c=b.settings()[0],e=c.oScroll;a===k||a?b.draw(!1):(""!==e.sX||""!==e.sY)&&Y(c)};this.fnClearTable=function(a){var b=this.api(!0).clear();(a===k||a)&&b.draw()};this.fnClose= -function(a){this.api(!0).row(a).child.hide()};this.fnDeleteRow=function(a,b,c){var e=this.api(!0),a=e.rows(a),d=a.settings()[0],h=d.aoData[a[0][0]];a.remove();b&&b.call(this,d,h);(c===k||c)&&e.draw();return h};this.fnDestroy=function(a){this.api(!0).destroy(a)};this.fnDraw=function(a){this.api(!0).draw(!a)};this.fnFilter=function(a,b,c,e,d,h){d=this.api(!0);null===b||b===k?d.search(a,c,e,h):d.column(b).search(a,c,e,h);d.draw()};this.fnGetData=function(a,b){var c=this.api(!0);if(a!==k){var e=a.nodeName? -a.nodeName.toLowerCase():"";return b!==k||"td"==e||"th"==e?c.cell(a,b).data():c.row(a).data()||null}return c.data().toArray()};this.fnGetNodes=function(a){var b=this.api(!0);return a!==k?b.row(a).node():b.rows().nodes().flatten().toArray()};this.fnGetPosition=function(a){var b=this.api(!0),c=a.nodeName.toUpperCase();return"TR"==c?b.row(a).index():"TD"==c||"TH"==c?(a=b.cell(a).index(),[a.row,a.columnVisible,a.column]):null};this.fnIsOpen=function(a){return this.api(!0).row(a).child.isShown()};this.fnOpen= -function(a,b,c){return this.api(!0).row(a).child(b,c).show().child()[0]};this.fnPageChange=function(a,b){var c=this.api(!0).page(a);(b===k||b)&&c.draw(!1)};this.fnSetColumnVis=function(a,b,c){a=this.api(!0).column(a).visible(b);(c===k||c)&&a.columns.adjust().draw()};this.fnSettings=function(){return za(this[x.iApiIndex])};this.fnSort=function(a){this.api(!0).order(a).draw()};this.fnSortListener=function(a,b,c){this.api(!0).order.listener(a,b,c)};this.fnUpdate=function(a,b,c,e,d){var h=this.api(!0); -c===k||null===c?h.row(b).data(a):h.cell(b,c).data(a);(d===k||d)&&h.columns.adjust();(e===k||e)&&h.draw();return 0};this.fnVersionCheck=x.fnVersionCheck;var b=this,c=a===k,e=this.length;c&&(a={});this.oApi=this.internal=x.internal;for(var d in o.ext.internal)d&&(this[d]=Nb(d));this.each(function(){var d={},d=1t<"F"ip>'),q.renderer)?h.isPlainObject(q.renderer)&&!q.renderer.header&&(q.renderer.header="jqueryui"):q.renderer="jqueryui":h.extend(i,o.ext.classes,d.oClasses);p.addClass(i.sTable);if(""!==q.oScroll.sX||""!==q.oScroll.sY)q.oScroll.iBarWidth=Hb();!0===q.oScroll.sX&& -(q.oScroll.sX="100%");q.iInitDisplayStart===k&&(q.iInitDisplayStart=d.iDisplayStart,q._iDisplayStart=d.iDisplayStart);null!==d.iDeferLoading&&(q.bDeferLoading=!0,g=h.isArray(d.iDeferLoading),q._iRecordsDisplay=g?d.iDeferLoading[0]:d.iDeferLoading,q._iRecordsTotal=g?d.iDeferLoading[1]:d.iDeferLoading);var t=q.oLanguage;h.extend(!0,t,d.oLanguage);""!==t.sUrl&&(h.ajax({dataType:"json",url:t.sUrl,success:function(a){O(a);H(l.oLanguage,a);h.extend(true,t,a);ga(q)},error:function(){ga(q)}}),m=!0);null=== -d.asStripeClasses&&(q.asStripeClasses=[i.sStripeOdd,i.sStripeEven]);var g=q.asStripeClasses,s=h("tbody tr",this).eq(0);-1!==h.inArray(!0,h.map(g,function(a){return s.hasClass(a)}))&&(h("tbody tr",this).removeClass(g.join(" ")),q.asDestroyStripes=g.slice());n=[];g=this.getElementsByTagName("thead");0!==g.length&&(da(q.aoHeader,g[0]),n=qa(q));if(null===d.aoColumns){r=[];g=0;for(j=n.length;g").appendTo(this));q.nTHead=j[0];j=p.children("tbody"); -0===j.length&&(j=h("").appendTo(this));q.nTBody=j[0];j=p.children("tfoot");if(0===j.length&&0").appendTo(this);0===j.length||0===j.children().length?p.addClass(i.sNoFooter):0a?new t(b[a],this[a]):null},filter:function(a){var b=[]; -if(v.filter)b=v.filter.call(this,a,this);else for(var c=0,e=this.length;c").addClass(b);h("td",c).addClass(b).html(a)[0].colSpan=aa(e);d.push(c[0])}};if(h.isArray(a)||a instanceof h)for(var g=0,j=a.length;g=0?b:g.length+b];if(typeof a==="function"){var d=Ca(c,f);return h.map(g,function(b,f){return a(f,Wb(c,f,0,0,d),i[f])?f:null})}var k=typeof a==="string"?a.match(dc):"";if(k)switch(k[2]){case "visIdx":case "visible":b=parseInt(k[1],10);if(b<0){var o=h.map(g,function(a,b){return a.bVisible?b:null});return[o[o.length+b]]}return[la(c,b)];case "name":return h.map(j,function(a,b){return a===k[1]?b:null})}else return h(i).filter(a).map(function(){return h.inArray(this, -i)}).toArray()})},1);c.selector.cols=a;c.selector.opts=b;return c});u("columns().header()","column().header()",function(){return this.iterator("column",function(a,b){return a.aoColumns[b].nTh},1)});u("columns().footer()","column().footer()",function(){return this.iterator("column",function(a,b){return a.aoColumns[b].nTf},1)});u("columns().data()","column().data()",function(){return this.iterator("column-rows",Wb,1)});u("columns().dataSrc()","column().dataSrc()",function(){return this.iterator("column", -function(a,b){return a.aoColumns[b].mData},1)});u("columns().cache()","column().cache()",function(a){return this.iterator("column-rows",function(b,c,e,d,f){return ia(b.aoData,f,"search"===a?"_aFilterData":"_aSortData",c)},1)});u("columns().nodes()","column().nodes()",function(){return this.iterator("column-rows",function(a,b,c,e,d){return ia(a.aoData,d,"anCells",b)},1)});u("columns().visible()","column().visible()",function(a,b){return this.iterator("column",function(c,e){if(a===k)return c.aoColumns[e].bVisible; -var d=c.aoColumns,f=d[e],g=c.aoData,j,i,m;if(a!==k&&f.bVisible!==a){if(a){var l=h.inArray(!0,D(d,"bVisible"),e+1);j=0;for(i=g.length;je;return!0};o.isDataTable=o.fnIsDataTable=function(a){var b=h(a).get(0),c=!1;h.each(o.settings, -function(a,d){if(d.nTable===b||h("table",d.nScrollHead)[0]===b||h("table",d.nScrollFoot)[0]===b)c=!0});return c};o.tables=o.fnTables=function(a){return h.map(o.settings,function(b){if(!a||a&&h(b.nTable).is(":visible"))return b.nTable})};o.util={throttle:ua,escapeRegex:va};o.camelToHungarian=H;r("$()",function(a,b){var c=this.rows(b).nodes(),c=h(c);return h([].concat(c.filter(a).toArray(),c.find(a).toArray()))});h.each(["on","one","off"],function(a,b){r(b+"()",function(){var a=Array.prototype.slice.call(arguments); -a[0].match(/\.dt\b/)||(a[0]+=".dt");var e=h(this.tables().nodes());e[b].apply(e,a);return this})});r("clear()",function(){return this.iterator("table",function(a){oa(a)})});r("settings()",function(){return new t(this.context,this.context)});r("data()",function(){return this.iterator("table",function(a){return D(a.aoData,"_aData")}).flatten()});r("destroy()",function(a){a=a||!1;return this.iterator("table",function(b){var c=b.nTableWrapper.parentNode,e=b.oClasses,d=b.nTable,f=b.nTBody,g=b.nTHead,j= -b.nTFoot,i=h(d),f=h(f),k=h(b.nTableWrapper),l=h.map(b.aoData,function(a){return a.nTr}),p;b.bDestroying=!0;w(b,"aoDestroyCallback","destroy",[b]);a||(new t(b)).columns().visible(!0);k.unbind(".DT").find(":not(tbody *)").unbind(".DT");h(Ea).unbind(".DT-"+b.sInstance);d!=g.parentNode&&(i.children("thead").detach(),i.append(g));j&&d!=j.parentNode&&(i.children("tfoot").detach(),i.append(j));i.detach();k.detach();b.aaSorting=[];b.aaSortingFixed=[];xa(b);h(l).removeClass(b.asStripeClasses.join(" "));h("th, td", -g).removeClass(e.sSortable+" "+e.sSortableAsc+" "+e.sSortableDesc+" "+e.sSortableNone);b.bJUI&&(h("th span."+e.sSortIcon+", td span."+e.sSortIcon,g).detach(),h("th, td",g).each(function(){var a=h("div."+e.sSortJUIWrapper,this);h(this).append(a.contents());a.detach()}));!a&&c&&c.insertBefore(d,b.nTableReinsertBefore);f.children().detach();f.append(l);i.css("width",b.sDestroyWidth).removeClass(e.sTable);(p=b.asDestroyStripes.length)&&f.children().each(function(a){h(this).addClass(b.asDestroyStripes[a% -p])});c=h.inArray(b,o.settings);-1!==c&&o.settings.splice(c,1)})});o.version="1.10.5";o.settings=[];o.models={};o.models.oSearch={bCaseInsensitive:!0,sSearch:"",bRegex:!1,bSmart:!0};o.models.oRow={nTr:null,anCells:null,_aData:[],_aSortData:null,_aFilterData:null,_sFilterRow:null,_sRowStripe:"",src:null};o.models.oColumn={idx:null,aDataSort:null,asSorting:null,bSearchable:null,bSortable:null,bVisible:null,_sManualType:null,_bAttrSrc:!1,fnCreatedCell:null,fnGetData:null,fnSetData:null,mData:null,mRender:null, -nTh:null,nTf:null,sClass:null,sContentPadding:null,sDefaultContent:null,sName:null,sSortDataType:"std",sSortingClass:null,sSortingClassJUI:null,sTitle:null,sType:null,sWidth:null,sWidthOrig:null};o.defaults={aaData:null,aaSorting:[[0,"asc"]],aaSortingFixed:[],ajax:null,aLengthMenu:[10,25,50,100],aoColumns:null,aoColumnDefs:null,aoSearchCols:[],asStripeClasses:null,bAutoWidth:!0,bDeferRender:!1,bDestroy:!1,bFilter:!0,bInfo:!0,bJQueryUI:!1,bLengthChange:!0,bPaginate:!0,bProcessing:!1,bRetrieve:!1,bScrollCollapse:!1, -bServerSide:!1,bSort:!0,bSortMulti:!0,bSortCellsTop:!1,bSortClasses:!0,bStateSave:!1,fnCreatedRow:null,fnDrawCallback:null,fnFooterCallback:null,fnFormatNumber:function(a){return a.toString().replace(/\B(?=(\d{3})+(?!\d))/g,this.oLanguage.sThousands)},fnHeaderCallback:null,fnInfoCallback:null,fnInitComplete:null,fnPreDrawCallback:null,fnRowCallback:null,fnServerData:null,fnServerParams:null,fnStateLoadCallback:function(a){try{return JSON.parse((-1===a.iStateDuration?sessionStorage:localStorage).getItem("DataTables_"+ -a.sInstance+"_"+location.pathname))}catch(b){}},fnStateLoadParams:null,fnStateLoaded:null,fnStateSaveCallback:function(a,b){try{(-1===a.iStateDuration?sessionStorage:localStorage).setItem("DataTables_"+a.sInstance+"_"+location.pathname,JSON.stringify(b))}catch(c){}},fnStateSaveParams:null,iStateDuration:7200,iDeferLoading:null,iDisplayLength:10,iDisplayStart:0,iTabIndex:0,oClasses:{},oLanguage:{oAria:{sSortAscending:": activate to sort column ascending",sSortDescending:": activate to sort column descending"}, -oPaginate:{sFirst:"First",sLast:"Last",sNext:"Next",sPrevious:"Previous"},sEmptyTable:"No data available in table",sInfo:"Showing _START_ to _END_ of _TOTAL_ entries",sInfoEmpty:"Showing 0 to 0 of 0 entries",sInfoFiltered:"(filtered from _MAX_ total entries)",sInfoPostFix:"",sDecimal:"",sThousands:",",sLengthMenu:"Show _MENU_ entries",sLoadingRecords:"Loading...",sProcessing:"Processing...",sSearch:"Search:",sSearchPlaceholder:"",sUrl:"",sZeroRecords:"No matching records found"},oSearch:h.extend({}, -o.models.oSearch),sAjaxDataProp:"data",sAjaxSource:null,sDom:"lfrtip",searchDelay:null,sPaginationType:"simple_numbers",sScrollX:"",sScrollXInner:"",sScrollY:"",sServerMethod:"GET",renderer:null};V(o.defaults);o.defaults.column={aDataSort:null,iDataSort:-1,asSorting:["asc","desc"],bSearchable:!0,bSortable:!0,bVisible:!0,fnCreatedCell:null,mData:null,mRender:null,sCellType:"td",sClass:"",sContentPadding:"",sDefaultContent:null,sName:"",sSortDataType:"std",sTitle:null,sType:null,sWidth:null};V(o.defaults.column); -o.models.oSettings={oFeatures:{bAutoWidth:null,bDeferRender:null,bFilter:null,bInfo:null,bLengthChange:null,bPaginate:null,bProcessing:null,bServerSide:null,bSort:null,bSortMulti:null,bSortClasses:null,bStateSave:null},oScroll:{bCollapse:null,iBarWidth:0,sX:null,sXInner:null,sY:null},oLanguage:{fnInfoCallback:null},oBrowser:{bScrollOversize:!1,bScrollbarLeft:!1},ajax:null,aanFeatures:[],aoData:[],aiDisplay:[],aiDisplayMaster:[],aoColumns:[],aoHeader:[],aoFooter:[],oPreviousSearch:{},aoPreSearchCols:[], -aaSorting:null,aaSortingFixed:[],asStripeClasses:null,asDestroyStripes:[],sDestroyWidth:0,aoRowCallback:[],aoHeaderCallback:[],aoFooterCallback:[],aoDrawCallback:[],aoRowCreatedCallback:[],aoPreDrawCallback:[],aoInitComplete:[],aoStateSaveParams:[],aoStateLoadParams:[],aoStateLoaded:[],sTableId:"",nTable:null,nTHead:null,nTFoot:null,nTBody:null,nTableWrapper:null,bDeferLoading:!1,bInitialised:!1,aoOpenRows:[],sDom:null,searchDelay:null,sPaginationType:"two_button",iStateDuration:0,aoStateSave:[], -aoStateLoad:[],oSavedState:null,oLoadedState:null,sAjaxSource:null,sAjaxDataProp:null,bAjaxDataGet:!0,jqXHR:null,json:k,oAjaxData:k,fnServerData:null,aoServerParams:[],sServerMethod:null,fnFormatNumber:null,aLengthMenu:null,iDraw:0,bDrawing:!1,iDrawError:-1,_iDisplayLength:10,_iDisplayStart:0,_iRecordsTotal:0,_iRecordsDisplay:0,bJUI:null,oClasses:{},bFiltered:!1,bSorted:!1,bSortCellsTop:null,oInit:null,aoDestroyCallback:[],fnRecordsTotal:function(){return"ssp"==B(this)?1*this._iRecordsTotal:this.aiDisplayMaster.length}, -fnRecordsDisplay:function(){return"ssp"==B(this)?1*this._iRecordsDisplay:this.aiDisplay.length},fnDisplayEnd:function(){var a=this._iDisplayLength,b=this._iDisplayStart,c=b+a,e=this.aiDisplay.length,d=this.oFeatures,f=d.bPaginate;return d.bServerSide?!1===f||-1===a?b+e:Math.min(b+a,this._iRecordsDisplay):!f||c>e||-1===a?e:c},oInstance:null,sInstance:null,iTabIndex:0,nScrollHead:null,nScrollFoot:null,aLastSort:[],oPlugins:{}};o.ext=x={buttons:{},classes:{},errMode:"alert",feature:[],search:[],internal:{}, -legacy:{ajax:null},pager:{},renderer:{pageButton:{},header:{}},order:{},type:{detect:[],search:{},order:{}},_unique:0,fnVersionCheck:o.fnVersionCheck,iApiIndex:0,oJUIClasses:{},sVersion:o.version};h.extend(x,{afnFiltering:x.search,aTypes:x.type.detect,ofnSearch:x.type.search,oSort:x.type.order,afnSortData:x.order,aoFeatures:x.feature,oApi:x.internal,oStdClasses:x.classes,oPagination:x.pager});h.extend(o.ext.classes,{sTable:"dataTable",sNoFooter:"no-footer",sPageButton:"paginate_button",sPageButtonActive:"current", -sPageButtonDisabled:"disabled",sStripeOdd:"odd",sStripeEven:"even",sRowEmpty:"dataTables_empty",sWrapper:"dataTables_wrapper",sFilter:"dataTables_filter",sInfo:"dataTables_info",sPaging:"dataTables_paginate paging_",sLength:"dataTables_length",sProcessing:"dataTables_processing",sSortAsc:"sorting_asc",sSortDesc:"sorting_desc",sSortable:"sorting",sSortableAsc:"sorting_asc_disabled",sSortableDesc:"sorting_desc_disabled",sSortableNone:"sorting_disabled",sSortColumn:"sorting_",sFilterInput:"",sLengthSelect:"", -sScrollWrapper:"dataTables_scroll",sScrollHead:"dataTables_scrollHead",sScrollHeadInner:"dataTables_scrollHeadInner",sScrollBody:"dataTables_scrollBody",sScrollFoot:"dataTables_scrollFoot",sScrollFootInner:"dataTables_scrollFootInner",sHeaderTH:"",sFooterTH:"",sSortJUIAsc:"",sSortJUIDesc:"",sSortJUI:"",sSortJUIAscAllowed:"",sSortJUIDescAllowed:"",sSortJUIWrapper:"",sSortIcon:"",sJUIHeader:"",sJUIFooter:""});var Da="",Da="",F=Da+"ui-state-default",ja=Da+"css_right ui-icon ui-icon-",Xb=Da+"fg-toolbar ui-toolbar ui-widget-header ui-helper-clearfix"; -h.extend(o.ext.oJUIClasses,o.ext.classes,{sPageButton:"fg-button ui-button "+F,sPageButtonActive:"ui-state-disabled",sPageButtonDisabled:"ui-state-disabled",sPaging:"dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi ui-buttonset-multi paging_",sSortAsc:F+" sorting_asc",sSortDesc:F+" sorting_desc",sSortable:F+" sorting",sSortableAsc:F+" sorting_asc_disabled",sSortableDesc:F+" sorting_desc_disabled",sSortableNone:F+" sorting_disabled",sSortJUIAsc:ja+"triangle-1-n",sSortJUIDesc:ja+"triangle-1-s", -sSortJUI:ja+"carat-2-n-s",sSortJUIAscAllowed:ja+"carat-1-n",sSortJUIDescAllowed:ja+"carat-1-s",sSortJUIWrapper:"DataTables_sort_wrapper",sSortIcon:"DataTables_sort_icon",sScrollHead:"dataTables_scrollHead "+F,sScrollFoot:"dataTables_scrollFoot "+F,sHeaderTH:F,sFooterTH:F,sJUIHeader:Xb+" ui-corner-tl ui-corner-tr",sJUIFooter:Xb+" ui-corner-bl ui-corner-br"});var Mb=o.ext.pager;h.extend(Mb,{simple:function(){return["previous","next"]},full:function(){return["first","previous","next","last"]},simple_numbers:function(a, -b){return["previous",Wa(a,b),"next"]},full_numbers:function(a,b){return["first","previous",Wa(a,b),"next","last"]},_numbers:Wa,numbers_length:7});h.extend(!0,o.ext.renderer,{pageButton:{_:function(a,b,c,e,d,f){var g=a.oClasses,j=a.oLanguage.oPaginate,i,k,l=0,o=function(b,e){var n,r,t,s,u=function(b){Ta(a,b.data.action,true)};n=0;for(r=e.length;n").appendTo(b);o(t,s)}else{k=i="";switch(s){case "ellipsis":b.append(""); -break;case "first":i=j.sFirst;k=s+(d>0?"":" "+g.sPageButtonDisabled);break;case "previous":i=j.sPrevious;k=s+(d>0?"":" "+g.sPageButtonDisabled);break;case "next":i=j.sNext;k=s+(d",{"class":g.sPageButton+" "+k,"aria-controls":a.sTableId,"data-dt-idx":l,tabindex:a.iTabIndex,id:c===0&&typeof s==="string"?a.sTableId+"_"+s:null}).html(i).appendTo(b); -Va(t,{action:s},u);l++}}}},n;try{n=h(P.activeElement).data("dt-idx")}catch(r){}o(h(b).empty(),e);n&&h(b).find("[data-dt-idx="+n+"]").focus()}}});h.extend(o.ext.type.detect,[function(a,b){var c=b.oLanguage.sDecimal;return Za(a,c)?"num"+c:null},function(a){if(a&&!(a instanceof Date)&&(!ac.test(a)||!bc.test(a)))return null;var b=Date.parse(a);return null!==b&&!isNaN(b)||I(a)?"date":null},function(a,b){var c=b.oLanguage.sDecimal;return Za(a,c,!0)?"num-fmt"+c:null},function(a,b){var c=b.oLanguage.sDecimal; -return Rb(a,c)?"html-num"+c:null},function(a,b){var c=b.oLanguage.sDecimal;return Rb(a,c,!0)?"html-num-fmt"+c:null},function(a){return I(a)||"string"===typeof a&&-1!==a.indexOf("<")?"html":null}]);h.extend(o.ext.type.search,{html:function(a){return I(a)?a:"string"===typeof a?a.replace(Ob," ").replace(Ba,""):""},string:function(a){return I(a)?a:"string"===typeof a?a.replace(Ob," "):a}});var Aa=function(a,b,c,e){if(0!==a&&(!a||"-"===a))return-Infinity;b&&(a=Qb(a,b));a.replace&&(c&&(a=a.replace(c,"")), -e&&(a=a.replace(e,"")));return 1*a};h.extend(x.type.order,{"date-pre":function(a){return Date.parse(a)||0},"html-pre":function(a){return I(a)?"":a.replace?a.replace(/<.*?>/g,"").toLowerCase():a+""},"string-pre":function(a){return I(a)?"":"string"===typeof a?a.toLowerCase():!a.toString?"":a.toString()},"string-asc":function(a,b){return ab?1:0},"string-desc":function(a,b){return ab?-1:0}});db("");h.extend(!0,o.ext.renderer,{header:{_:function(a,b,c,e){h(a.nTable).on("order.dt.DT",function(d, -f,g,h){if(a===f){d=c.idx;b.removeClass(c.sSortingClass+" "+e.sSortAsc+" "+e.sSortDesc).addClass(h[d]=="asc"?e.sSortAsc:h[d]=="desc"?e.sSortDesc:c.sSortingClass)}})},jqueryui:function(a,b,c,e){h("
      ").addClass(e.sSortJUIWrapper).append(b.contents()).append(h("").addClass(e.sSortIcon+" "+c.sSortingClassJUI)).appendTo(b);h(a.nTable).on("order.dt.DT",function(d,f,g,h){if(a===f){d=c.idx;b.removeClass(e.sSortAsc+" "+e.sSortDesc).addClass(h[d]=="asc"?e.sSortAsc:h[d]=="desc"?e.sSortDesc:c.sSortingClass); -b.find("span."+e.sSortIcon).removeClass(e.sSortJUIAsc+" "+e.sSortJUIDesc+" "+e.sSortJUI+" "+e.sSortJUIAscAllowed+" "+e.sSortJUIDescAllowed).addClass(h[d]=="asc"?e.sSortJUIAsc:h[d]=="desc"?e.sSortJUIDesc:c.sSortingClassJUI)}})}}});o.render={number:function(a,b,c,e){return{display:function(d){var f=0>d?"-":"",d=Math.abs(parseFloat(d)),g=parseInt(d,10),d=c?b+(d-g).toFixed(c).substring(2):"";return f+(e||"")+g.toString().replace(/\B(?=(\d{3})+(?!\d))/g,a)+d}}}};h.extend(o.ext.internal,{_fnExternApiFunc:Nb, -_fnBuildAjax:ra,_fnAjaxUpdate:kb,_fnAjaxParameters:tb,_fnAjaxUpdateDraw:ub,_fnAjaxDataSrc:sa,_fnAddColumn:Fa,_fnColumnOptions:ka,_fnAdjustColumnSizing:X,_fnVisibleToColumnIndex:la,_fnColumnIndexToVisible:$,_fnVisbleColumns:aa,_fnGetColumns:Z,_fnColumnTypes:Ha,_fnApplyColumnDefs:ib,_fnHungarianMap:V,_fnCamelToHungarian:H,_fnLanguageCompat:O,_fnBrowserDetect:gb,_fnAddData:J,_fnAddTr:ma,_fnNodeToDataIndex:function(a,b){return b._DT_RowIndex!==k?b._DT_RowIndex:null},_fnNodeToColumnIndex:function(a,b, -c){return h.inArray(c,a.aoData[b].anCells)},_fnGetCellData:y,_fnSetCellData:Ia,_fnSplitObjNotation:Ka,_fnGetObjectDataFn:W,_fnSetObjectDataFn:Q,_fnGetDataMaster:La,_fnClearTable:oa,_fnDeleteIndex:pa,_fnInvalidate:ca,_fnGetRowElements:na,_fnCreateTr:Ja,_fnBuildHead:jb,_fnDrawHead:ea,_fnDraw:M,_fnReDraw:N,_fnAddOptionsHtml:mb,_fnDetectHeader:da,_fnGetUniqueThs:qa,_fnFeatureHtmlFilter:ob,_fnFilterComplete:fa,_fnFilterCustom:xb,_fnFilterColumn:wb,_fnFilter:vb,_fnFilterCreateSearch:Qa,_fnEscapeRegex:va, -_fnFilterData:yb,_fnFeatureHtmlInfo:rb,_fnUpdateInfo:Bb,_fnInfoMacros:Cb,_fnInitialise:ga,_fnInitComplete:ta,_fnLengthChange:Ra,_fnFeatureHtmlLength:nb,_fnFeatureHtmlPaginate:sb,_fnPageChange:Ta,_fnFeatureHtmlProcessing:pb,_fnProcessingDisplay:C,_fnFeatureHtmlTable:qb,_fnScrollDraw:Y,_fnApplyToChildren:G,_fnCalculateColumnWidths:Ga,_fnThrottle:ua,_fnConvertToWidth:Db,_fnScrollingWidthAdjust:Fb,_fnGetWidestNode:Eb,_fnGetMaxLenString:Gb,_fnStringToCss:s,_fnScrollBarWidth:Hb,_fnSortFlatten:T,_fnSort:lb, -_fnSortAria:Jb,_fnSortListener:Ua,_fnSortAttachListener:Oa,_fnSortingClasses:xa,_fnSortData:Ib,_fnSaveState:ya,_fnLoadState:Kb,_fnSettingsFromNode:za,_fnLog:R,_fnMap:E,_fnBindAction:Va,_fnCallbackReg:z,_fnCallbackFire:w,_fnLengthOverflow:Sa,_fnRenderer:Pa,_fnDataSource:B,_fnRowAttributes:Ma,_fnCalculateEnd:function(){}});h.fn.dataTable=o;h.fn.dataTableSettings=o.settings;h.fn.dataTableExt=o.ext;h.fn.DataTable=function(a){return h(this).dataTable(a).api()};h.each(o,function(a,b){h.fn.DataTable[a]= -b});return h.fn.dataTable};"function"===typeof define&&define.amd?define("datatables",["jquery"],O):"object"===typeof exports?module.exports=O(require("jquery")):jQuery&&!jQuery.fn.dataTable&&O(jQuery)})(window,document); \ No newline at end of file diff --git a/intake/static/intake/scripts/treetable/jquery.treetable.js b/intake/static/intake/scripts/treetable/jquery.treetable.js deleted file mode 100644 index 5807986c..00000000 --- a/intake/static/intake/scripts/treetable/jquery.treetable.js +++ /dev/null @@ -1,650 +0,0 @@ -/* - * jQuery treetable Plugin 3.2.0 - * http://ludo.cubicphuse.nl/jquery-treetable - * - * Copyright 2013, Ludo van den Boom - * Dual licensed under the MIT or GPL Version 2 licenses. - */ -(function($) { - var Node, Tree, methods; - - Node = (function() { - function Node(row, tree, settings) { - var parentId; - - this.row = row; - this.tree = tree; - this.settings = settings; - - // TODO Ensure id/parentId is always a string (not int) - this.id = this.row.data(this.settings.nodeIdAttr); - - // TODO Move this to a setParentId function? - parentId = this.row.data(this.settings.parentIdAttr); - if (parentId != null && parentId !== "") { - this.parentId = parentId; - } - - this.treeCell = $(this.row.children(this.settings.columnElType)[this.settings.column]); - this.expander = $(this.settings.expanderTemplate); - this.indenter = $(this.settings.indenterTemplate); - this.children = []; - this.initialized = false; - this.treeCell.prepend(this.indenter); - } - - Node.prototype.addChild = function(child) { - return this.children.push(child); - }; - - Node.prototype.ancestors = function() { - var ancestors, node; - node = this; - ancestors = []; - while (node = node.parentNode()) { - ancestors.push(node); - } - return ancestors; - }; - - Node.prototype.collapse = function() { - if (this.collapsed()) { - return this; - } - - this.row.removeClass("expanded").addClass("collapsed"); - - this._hideChildren(); - this.expander.attr("title", this.settings.stringExpand); - - if (this.initialized && this.settings.onNodeCollapse != null) { - this.settings.onNodeCollapse.apply(this); - } - - return this; - }; - - Node.prototype.collapsed = function() { - return this.row.hasClass("collapsed"); - }; - - // TODO destroy: remove event handlers, expander, indenter, etc. - - Node.prototype.expand = function() { - if (this.expanded()) { - return this; - } - - this.row.removeClass("collapsed").addClass("expanded"); - - if (this.initialized && this.settings.onNodeExpand != null) { - this.settings.onNodeExpand.apply(this); - } - - if ($(this.row).is(":visible")) { - this._showChildren(); - } - - this.expander.attr("title", this.settings.stringCollapse); - - return this; - }; - - Node.prototype.expanded = function() { - return this.row.hasClass("expanded"); - }; - - Node.prototype.hide = function() { - this._hideChildren(); - this.row.hide(); - return this; - }; - - Node.prototype.isBranchNode = function() { - if(this.children.length > 0 || this.row.data(this.settings.branchAttr) === true) { - return true; - } else { - return false; - } - }; - - Node.prototype.updateBranchLeafClass = function(){ - this.row.removeClass('branch'); - this.row.removeClass('leaf'); - this.row.addClass(this.isBranchNode() ? 'branch' : 'leaf'); - }; - - Node.prototype.level = function() { - return this.ancestors().length; - }; - - Node.prototype.parentNode = function() { - if (this.parentId != null) { - return this.tree[this.parentId]; - } else { - return null; - } - }; - - Node.prototype.removeChild = function(child) { - var i = $.inArray(child, this.children); - return this.children.splice(i, 1) - }; - - Node.prototype.render = function() { - var handler, - settings = this.settings, - target; - - if (settings.expandable === true && this.isBranchNode()) { - handler = function(e) { - $(this).parents("table").treetable("node", $(this).parents("tr").data(settings.nodeIdAttr)).toggle(); - return e.preventDefault(); - }; - - this.indenter.html(this.expander); - target = settings.clickableNodeNames === true ? this.treeCell : this.expander; - - target.off("click.treetable").on("click.treetable", handler); - target.off("keydown.treetable").on("keydown.treetable", function(e) { - if (e.keyCode == 13) { - handler.apply(this, [e]); - } - }); - } - - this.indenter[0].style.paddingLeft = "" + (this.level() * settings.indent) + "px"; - - return this; - }; - - Node.prototype.reveal = function() { - if (this.parentId != null) { - this.parentNode().reveal(); - } - return this.expand(); - }; - - Node.prototype.setParent = function(node) { - if (this.parentId != null) { - this.tree[this.parentId].removeChild(this); - } - this.parentId = node.id; - this.row.data(this.settings.parentIdAttr, node.id); - return node.addChild(this); - }; - - Node.prototype.show = function() { - if (!this.initialized) { - this._initialize(); - } - this.row.show(); - if (this.expanded()) { - this._showChildren(); - } - return this; - }; - - Node.prototype.toggle = function() { - if (this.expanded()) { - this.collapse(); - } else { - this.expand(); - } - return this; - }; - - Node.prototype._hideChildren = function() { - var child, _i, _len, _ref, _results; - _ref = this.children; - _results = []; - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - child = _ref[_i]; - _results.push(child.hide()); - } - return _results; - }; - - Node.prototype._initialize = function() { - var settings = this.settings; - - this.render(); - - if (settings.expandable === true && settings.initialState === "collapsed") { - this.collapse(); - } else { - this.expand(); - } - - if (settings.onNodeInitialized != null) { - settings.onNodeInitialized.apply(this); - } - - return this.initialized = true; - }; - - Node.prototype._showChildren = function() { - var child, _i, _len, _ref, _results; - _ref = this.children; - _results = []; - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - child = _ref[_i]; - _results.push(child.show()); - } - return _results; - }; - - return Node; - })(); - - Tree = (function() { - function Tree(table, settings) { - this.table = table; - this.settings = settings; - this.tree = {}; - - // Cache the nodes and roots in simple arrays for quick access/iteration - this.nodes = []; - this.roots = []; - } - - Tree.prototype.collapseAll = function() { - var node, _i, _len, _ref, _results; - _ref = this.nodes; - _results = []; - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - node = _ref[_i]; - _results.push(node.collapse()); - } - return _results; - }; - - Tree.prototype.expandAll = function() { - var node, _i, _len, _ref, _results; - _ref = this.nodes; - _results = []; - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - node = _ref[_i]; - _results.push(node.expand()); - } - return _results; - }; - - Tree.prototype.findLastNode = function (node) { - if (node.children.length > 0) { - return this.findLastNode(node.children[node.children.length - 1]); - } else { - return node; - } - }; - - Tree.prototype.loadRows = function(rows) { - var node, row, i; - - if (rows != null) { - for (i = 0; i < rows.length; i++) { - row = $(rows[i]); - - if (row.data(this.settings.nodeIdAttr) != null) { - node = new Node(row, this.tree, this.settings); - this.nodes.push(node); - this.tree[node.id] = node; - - if (node.parentId != null && this.tree[node.parentId]) { - this.tree[node.parentId].addChild(node); - } else { - this.roots.push(node); - } - } - } - } - - for (i = 0; i < this.nodes.length; i++) { - node = this.nodes[i].updateBranchLeafClass(); - } - - return this; - }; - - Tree.prototype.move = function(node, destination) { - // Conditions: - // 1: +node+ should not be inserted as a child of +node+ itself. - // 2: +destination+ should not be the same as +node+'s current parent (this - // prevents +node+ from being moved to the same location where it already - // is). - // 3: +node+ should not be inserted in a location in a branch if this would - // result in +node+ being an ancestor of itself. - var nodeParent = node.parentNode(); - if (node !== destination && destination.id !== node.parentId && $.inArray(node, destination.ancestors()) === -1) { - node.setParent(destination); - this._moveRows(node, destination); - - // Re-render parentNode if this is its first child node, and therefore - // doesn't have the expander yet. - if (node.parentNode().children.length === 1) { - node.parentNode().render(); - } - } - - if(nodeParent){ - nodeParent.updateBranchLeafClass(); - } - if(node.parentNode()){ - node.parentNode().updateBranchLeafClass(); - } - node.updateBranchLeafClass(); - return this; - }; - - Tree.prototype.removeNode = function(node) { - // Recursively remove all descendants of +node+ - this.unloadBranch(node); - - // Remove node from DOM () - node.row.remove(); - - // Remove node from parent children list - if (node.parentId != null) { - node.parentNode().removeChild(node); - } - - // Clean up Tree object (so Node objects are GC-ed) - delete this.tree[node.id]; - this.nodes.splice($.inArray(node, this.nodes), 1); - - return this; - } - - Tree.prototype.render = function() { - var root, _i, _len, _ref; - _ref = this.roots; - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - root = _ref[_i]; - - // Naming is confusing (show/render). I do not call render on node from - // here. - root.show(); - } - return this; - }; - - Tree.prototype.sortBranch = function(node, sortFun) { - // First sort internal array of children - node.children.sort(sortFun); - - // Next render rows in correct order on page - this._sortChildRows(node); - - return this; - }; - - Tree.prototype.unloadBranch = function(node) { - // Use a copy of the children array to not have other functions interfere - // with this function if they manipulate the children array - // (eg removeNode). - var children = node.children.slice(0), - i; - - for (i = 0; i < children.length; i++) { - this.removeNode(children[i]); - } - - // Reset node's collection of children - node.children = []; - - node.updateBranchLeafClass(); - - return this; - }; - - Tree.prototype._moveRows = function(node, destination) { - var children = node.children, i; - - node.row.insertAfter(destination.row); - node.render(); - - // Loop backwards through children to have them end up on UI in correct - // order (see #112) - for (i = children.length - 1; i >= 0; i--) { - this._moveRows(children[i], node); - } - }; - - // Special _moveRows case, move children to itself to force sorting - Tree.prototype._sortChildRows = function(parentNode) { - return this._moveRows(parentNode, parentNode); - }; - - return Tree; - })(); - - // jQuery Plugin - methods = { - init: function(options, force) { - var settings; - - settings = $.extend({ - branchAttr: "ttBranch", - clickableNodeNames: false, - column: 0, - columnElType: "td", // i.e. 'td', 'th' or 'td,th' - expandable: false, - expanderTemplate: " ", - indent: 19, - indenterTemplate: "", - initialState: "collapsed", - nodeIdAttr: "ttId", // maps to data-tt-id - parentIdAttr: "ttParentId", // maps to data-tt-parent-id - stringExpand: "Expand", - stringCollapse: "Collapse", - - // Events - onInitialized: null, - onNodeCollapse: null, - onNodeExpand: null, - onNodeInitialized: null - }, options); - - return this.each(function() { - var el = $(this), tree; - - if (force || el.data("treetable") === undefined) { - tree = new Tree(this, settings); - tree.loadRows(this.rows).render(); - - el.addClass("treetable").data("treetable", tree); - - if (settings.onInitialized != null) { - settings.onInitialized.apply(tree); - } - } - - return el; - }); - }, - - reInit: function(options){ - var settings = this.settings; - - return this.each(function() { - var el = $(this), tree; - - if (true) { - tree = new Tree(this, settings); - tree.loadRows(this.rows).render(); - - el.addClass("treetable").data("treetable", tree); - - if (true) { - settings.onInitialized.apply(tree); - } - } - - return el; - }); - }, - - destroy: function() { - return this.each(function() { - return $(this).removeData("treetable").removeClass("treetable"); - }); - }, - - collapseAll: function() { - this.data("treetable").collapseAll(); - return this; - }, - - collapseNode: function(id) { - var node = this.data("treetable").tree[id]; - - if (node) { - node.collapse(); - } else { - throw new Error("Unknown node '" + id + "'"); - } - - return this; - }, - - expandAll: function() { - this.data("treetable").expandAll(); - return this; - }, - - expandNode: function(id) { - var node = this.data("treetable").tree[id]; - - if (node) { - if (!node.initialized) { - node._initialize(); - } - - node.expand(); - } else { - throw new Error("Unknown node '" + id + "'"); - } - - return this; - }, - - loadBranch: function(node, rows) { - var settings = this.data("treetable").settings, - tree = this.data("treetable").tree; - - // TODO Switch to $.parseHTML - rows = $(rows); - - if (node == null) { // Inserting new root nodes - this.append(rows); - } else { - var lastNode = this.data("treetable").findLastNode(node); - rows.insertAfter(lastNode.row); - } - - this.data("treetable").loadRows(rows); - - // Make sure nodes are properly initialized - rows.filter("tr").each(function() { - tree[$(this).data(settings.nodeIdAttr)].show(); - }); - - if (node != null) { - // Re-render parent to ensure expander icon is shown (#79) - node.render().expand(); - } - - return this; - }, - - move: function(nodeId, destinationId) { - var destination, node; - - node = this.data("treetable").tree[nodeId]; - destination = this.data("treetable").tree[destinationId]; - this.data("treetable").move(node, destination); - - return this; - }, - - node: function(id) { - return this.data("treetable").tree[id]; - }, - - removeNode: function(id) { - var node = this.data("treetable").tree[id]; - - if (node) { - this.data("treetable").removeNode(node); - } else { - throw new Error("Unknown node '" + id + "'"); - } - - return this; - }, - - reveal: function(id) { - var node = this.data("treetable").tree[id]; - - if (node) { - node.reveal(); - } else { - throw new Error("Unknown node '" + id + "'"); - } - - return this; - }, - - sortBranch: function(node, columnOrFunction) { - var settings = this.data("treetable").settings, - prepValue, - sortFun; - - columnOrFunction = columnOrFunction || settings.column; - sortFun = columnOrFunction; - - if ($.isNumeric(columnOrFunction)) { - sortFun = function(a, b) { - var extractValue, valA, valB; - - extractValue = function(node) { - var val = node.row.find("td:eq(" + columnOrFunction + ")").text(); - // Ignore trailing/leading whitespace and use uppercase values for - // case insensitive ordering - return $.trim(val).toUpperCase(); - } - - valA = extractValue(a); - valB = extractValue(b); - - if (valA < valB) return -1; - if (valA > valB) return 1; - return 0; - }; - } - - this.data("treetable").sortBranch(node, sortFun); - return this; - }, - - unloadBranch: function(node) { - this.data("treetable").unloadBranch(node); - return this; - } - }; - - $.fn.treetable = function(method) { - if (methods[method]) { - return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); - } else if (typeof method === 'object' || !method) { - return methods.init.apply(this, arguments); - } else { - return $.error("Method " + method + " does not exist on jQuery.treetable"); - } - }; - - // Expose classes to world - this.TreeTable || (this.TreeTable = {}); - this.TreeTable.Node = Node; - this.TreeTable.Tree = Tree; -})(jQuery); diff --git a/intake/templates/intake/dataset_detail_view.html b/intake/templates/intake/dataset_detail_view.html deleted file mode 100644 index 33d9b36d..00000000 --- a/intake/templates/intake/dataset_detail_view.html +++ /dev/null @@ -1,104 +0,0 @@ -
      -

      Dataset

      - - - - - - - - - -
      Path{{ datasetPath | e }}
      Scanned by - {{ scannedByWhen.0 }} {{ scannedByWhen.1 }} -
      - - {% if datasetErrors or datasetWarnings %} -

      Errors and warnings

      - - - - - - - - - {% for item in datasetErrors %} - - - - - {% endfor %} - {% for item in datasetWarnings %} - - - - {% endfor %} - -
      Description
      {{ item }}
      {{ item }}
      - {% endif %} - - -

      Comments

      - - - - - - - - - - {% for item in datasetComments %} - - - - - - {% endfor %} - - - - -
      UserDateComment
      {{ item.name }}{{ item.time }}{{ item.comment }}
      -
      -
      - - - - -
      -
      -
      - - -

      File information

      - - - - - - - - - {% for node_id in path_nodes_ordered %} - {% if not (pathItems[node_id].parent_id=='' and node_id=='') %} - - - - - {% endif %} - {% endfor %} - -
      NameErrors and warnings
      {{ pathItems[node_id].name }} - {% if pathItems[node_id].errors %} - Error(s)
      - {{ pathItems[node_id].errors|join('
      ') }} - {% endif %} - {% if pathItems[node_id].warnings %} - Warning(s)
      - {{ pathItems[node_id].warnings|join('
      ') }} - {% endif %} -
      - -
      diff --git a/intake/templates/intake/intake.html b/intake/templates/intake/intake.html deleted file mode 100644 index cf0df18a..00000000 --- a/intake/templates/intake/intake.html +++ /dev/null @@ -1,311 +0,0 @@ -{% extends 'base.html' %} - -{% block title %}{{ super() }} - Intake{% endblock title %} - -{% block style %} - - - - - -{% endblock style %} - -{% block scripts %} - - - - - {% if permissions.manager %} - - {% else %} - - {% endif %} - - - - - - -{% endblock scripts %} - -{% block content %} - -{% if alertNr == 100 %} - - -{% else %} - - - - -
      -
      - -
      -
      - -
      -
      -
      - - -
      - {% if selectableScanFolders %} -
      - - -
      - {% endif %} - -
      - -
      - - {% if permissions.manager %} -
      - -
      -
      - -
      - - {% endif %} - - - - - -
      -
      - -
      -
      - {% if not permissions.manager %} - {% include 'intake/table_files_unrecognised.html' %} - {% endif %} - - - - {% if permissions.manager %} - - {% endif %} - - - - - - - - - - - - - - - - {% for data in dataSets %} - - - - {% if permissions.manager %} - - {% endif %} - - - - - - - - - - - - - {% endfor %} - -
      StatusDatePseudocodeExperiment typeWaveVersionNr. of filesNr. of errors/
      warnings
      Nr. of
      comments
      Created by
      - {{ data.datasetStatus | upper }} - - - -
      -
      {{ data.datasetCreateDateFormatted }}{{ data.pseudocode }}{{ data.experiment_type }}{{ data.wave }}{{ data.version }}{{ data.objects }} - {{ (data.datasetErrors + data.objectErrors) if (data.datasetErrors + data.objectErrors)>0 else '-' }} - / - {{ (data.datasetWarnings + data.objectWarnings) if (data.datasetWarnings + data.objectWarnings)>0 else '-' }} - - {{ data.datasetComments if data.datasetComments else '-' }} - - {{ data.datasetCreateName }} -
      - - {% if permissions.manager %} - {% include 'intake/table_files_unrecognised.html' %} - {% endif %} -
      -
      - - - -{% endif %} - -{% endblock content %} diff --git a/intake/templates/intake/reports.html b/intake/templates/intake/reports.html deleted file mode 100644 index eef2c8d0..00000000 --- a/intake/templates/intake/reports.html +++ /dev/null @@ -1,231 +0,0 @@ -{% extends 'base.html' %} - -{% block title %}{{ super() }} - Intake{% endblock title %} - -{% block style %} - -{% endblock style %} - -{% block scripts %} - -{% endblock scripts %} - -{% block content %} -{% if access_denied %} -
      -
      -
      - -
      - This area or study is not accessible for you. -
      -
      -
      - Please click here to go to an area that is accessible for you. -
      - Intake -
      -
      -
      -
      -
      - -{% else %} - - - -
      -
      -
      - - - -
      - -
      - Intake -
      -
      -
      - -
      -
      -

      Raw

      - {% set exists = [] %} - - - - - - - - - - {% set counter = 0 %} - {% for type in datasetTypeCounts %} - {% for wave in datasetTypeCounts[type] %} - {% for version in datasetTypeCounts[type][wave] %} - {% if version=='raw' %} - {% if exists.append(1) %}{% endif %} - - - - - - {% endif %} - {% endfor %} - {% endfor %} - {% endfor %} - - -
      TypeWaveCount
      {{ type }}{{ wave }}{{ datasetTypeCounts[type][wave][version] }}
      - {% if not exists %} - No data found. - {% endif %} - -
      -
      -

      Processed

      - {% set exists = [] %} - - - - - - - - - - - {% for type in datasetTypeCounts %} - {% for wave in datasetTypeCounts[type] %} - {% for version in datasetTypeCounts[type][wave] %} - {% if version!='raw' %} - {% if exists.append(1) %}{% endif %} - - - - - - - {% endif %} - {% endfor %} - {% endfor %} - {% endfor %} - -
      TypeVersionWaveCount
      {{ type }}{{ version }}{{ wave }}{{ datasetTypeCounts[type][wave][version] }}
      - {% if not exists %} - No data found. - {% endif %} -
      -
      -
      -
      -
      -

      Raw

      - - - {% for version in aggregatedInfo %} - {% if version == 'raw' %} - {% for descr in aggregatedInfo[version] %} - - - - - {% endfor %} - {% endif %} - {% endfor %} - -
      {{ title_translate[descr] }} - {% if descr in ['totalFileSize', 'totalFileSizeMonthGrowth'] %} - {{ aggregatedInfo[version][descr] | filesizeformat(false) }} - {% else %} - {{ aggregatedInfo[version][descr] }} - {% endif %} -
      -
      -
      -

      Processed

      - - - {% for version in aggregatedInfo %} - {% if version == 'notRaw' %} - {% for descr in aggregatedInfo[version] %} - - - - - {% endfor %} - {% endif %} - {% endfor %} - -
      {{ title_translate[descr] }} - {% if descr in ['totalFileSize', 'totalFileSizeMonthGrowth'] %} - {{ aggregatedInfo[version][descr] | filesizeformat(false) }} - {% else %} - {{ aggregatedInfo[version][descr] }} - {% endif %} -
      -
      -
      -

      Total

      - - - {% for version in aggregatedInfo %} - {% if version == 'total' %} - {% for descr in aggregatedInfo[version] %} - - - - - {% endfor %} - {% endif %} - {% endfor %} - -
      {{ title_translate[descr] }} - {% if descr in ['totalFileSize', 'totalFileSizeMonthGrowth'] %} - {{ aggregatedInfo[version][descr] | filesizeformat(false) }} - {% else %} - {{ aggregatedInfo[version][descr] }} - {% endif %} -
      -
      -
      -{% endif %} -{% endblock content %} diff --git a/intake/templates/intake/table_files_unrecognised.html b/intake/templates/intake/table_files_unrecognised.html deleted file mode 100644 index c624229f..00000000 --- a/intake/templates/intake/table_files_unrecognised.html +++ /dev/null @@ -1,41 +0,0 @@ -

      - Unrecognised {% if totalErrorCount %}({{ totalErrorCount }}) {% endif %} - and unscanned - {% if (totalFileCount - totalDatasetFiles - totalErrorCount) > 0 %} - ({{ totalFileCount - totalDatasetFiles - totalErrorCount }}) - {% else %} - (-) - {% endif %} - files -

      - - - - - - - - - - - - - - - - {% for row in dataErroneousFiles %} - - - - - - - - - - - {% endfor %} - -
      NameDatePseudocodeExperiment typeWaveVersionStatusCreated by
      {{ row.name }}
      {{ row.date }}{{ row.pseudocode }}{{ row.experiment_type }}{{ row.wave }}{{ row.version }}Unrecognised{{ row.creator }}
      diff --git a/package.json b/package.json index 8d7663a9..cb8dce15 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,6 @@ ], "ignore": [ "**/lib/", - "**/intake/", "**/metadata-form/", "metadata-form.js", "datarequest/static/**" diff --git a/setup.cfg b/setup.cfg index 8f4785f7..6db22464 100644 --- a/setup.cfg +++ b/setup.cfg @@ -4,7 +4,7 @@ import-order-style=smarkets strictness=short docstring_style=sphinx max-line-length=127 -application-import-names=admin,api,connman,errors,fileviewer,general,group_manager,monitor,research,search,open_search,stats,user,vault,deposit,intake,datarequest,util +application-import-names=admin,api,connman,errors,fileviewer,general,group_manager,monitor,research,search,open_search,stats,user,vault,deposit,datarequest,util exclude=venv [mypy] diff --git a/static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.js b/static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.js deleted file mode 100644 index 5ef505ed..00000000 --- a/static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.js +++ /dev/null @@ -1,1018 +0,0 @@ -/*! - * jQuery Migrate - v3.4.1 - 2023-02-23T15:31Z - * Copyright OpenJS Foundation and other contributors - */ -( function( factory ) { - "use strict"; - - if ( typeof define === "function" && define.amd ) { - - // AMD. Register as an anonymous module. - define( [ "jquery" ], function( jQuery ) { - return factory( jQuery, window ); - } ); - } else if ( typeof module === "object" && module.exports ) { - - // Node/CommonJS - // eslint-disable-next-line no-undef - module.exports = factory( require( "jquery" ), window ); - } else { - - // Browser globals - factory( jQuery, window ); - } -} )( function( jQuery, window ) { -"use strict"; - -jQuery.migrateVersion = "3.4.1"; - -// Returns 0 if v1 == v2, -1 if v1 < v2, 1 if v1 > v2 -function compareVersions( v1, v2 ) { - var i, - rVersionParts = /^(\d+)\.(\d+)\.(\d+)/, - v1p = rVersionParts.exec( v1 ) || [ ], - v2p = rVersionParts.exec( v2 ) || [ ]; - - for ( i = 1; i <= 3; i++ ) { - if ( +v1p[ i ] > +v2p[ i ] ) { - return 1; - } - if ( +v1p[ i ] < +v2p[ i ] ) { - return -1; - } - } - return 0; -} - -function jQueryVersionSince( version ) { - return compareVersions( jQuery.fn.jquery, version ) >= 0; -} - -// A map from disabled patch codes to `true`. This should really -// be a `Set` but those are unsupported in IE. -var disabledPatches = Object.create( null ); - -// Don't apply patches for specified codes. Helpful for code bases -// where some Migrate warnings have been addressed and it's desirable -// to avoid needless patches or false positives. -jQuery.migrateDisablePatches = function() { - var i; - for ( i = 0; i < arguments.length; i++ ) { - disabledPatches[ arguments[ i ] ] = true; - } -}; - -// Allow enabling patches disabled via `jQuery.migrateDisablePatches`. -// Helpful if you want to disable a patch only for some code that won't -// be updated soon to be able to focus on other warnings - and enable it -// immediately after such a call: -// ```js -// jQuery.migrateDisablePatches( "workaroundA" ); -// elem.pluginViolatingWarningA( "pluginMethod" ); -// jQuery.migrateEnablePatches( "workaroundA" ); -// ``` -jQuery.migrateEnablePatches = function() { - var i; - for ( i = 0; i < arguments.length; i++ ) { - delete disabledPatches[ arguments[ i ] ]; - } -}; - -jQuery.migrateIsPatchEnabled = function( patchCode ) { - return !disabledPatches[ patchCode ]; -}; - -( function() { - - // Support: IE9 only - // IE9 only creates console object when dev tools are first opened - // IE9 console is a host object, callable but doesn't have .apply() - if ( !window.console || !window.console.log ) { - return; - } - - // Need jQuery 3.x-4.x and no older Migrate loaded - if ( !jQuery || !jQueryVersionSince( "3.0.0" ) || - jQueryVersionSince( "5.0.0" ) ) { - window.console.log( "JQMIGRATE: jQuery 3.x-4.x REQUIRED" ); - } - if ( jQuery.migrateWarnings ) { - window.console.log( "JQMIGRATE: Migrate plugin loaded multiple times" ); - } - - // Show a message on the console so devs know we're active - window.console.log( "JQMIGRATE: Migrate is installed" + - ( jQuery.migrateMute ? "" : " with logging active" ) + - ", version " + jQuery.migrateVersion ); - -} )(); - -var warnedAbout = {}; - -// By default each warning is only reported once. -jQuery.migrateDeduplicateWarnings = true; - -// List of warnings already given; public read only -jQuery.migrateWarnings = []; - -// Set to false to disable traces that appear with warnings -if ( jQuery.migrateTrace === undefined ) { - jQuery.migrateTrace = true; -} - -// Forget any warnings we've already given; public -jQuery.migrateReset = function() { - warnedAbout = {}; - jQuery.migrateWarnings.length = 0; -}; - -function migrateWarn( code, msg ) { - var console = window.console; - if ( jQuery.migrateIsPatchEnabled( code ) && - ( !jQuery.migrateDeduplicateWarnings || !warnedAbout[ msg ] ) ) { - warnedAbout[ msg ] = true; - jQuery.migrateWarnings.push( msg + " [" + code + "]" ); - if ( console && console.warn && !jQuery.migrateMute ) { - console.warn( "JQMIGRATE: " + msg ); - if ( jQuery.migrateTrace && console.trace ) { - console.trace(); - } - } - } -} - -function migrateWarnProp( obj, prop, value, code, msg ) { - Object.defineProperty( obj, prop, { - configurable: true, - enumerable: true, - get: function() { - migrateWarn( code, msg ); - return value; - }, - set: function( newValue ) { - migrateWarn( code, msg ); - value = newValue; - } - } ); -} - -function migrateWarnFuncInternal( obj, prop, newFunc, code, msg ) { - var finalFunc, - origFunc = obj[ prop ]; - - obj[ prop ] = function() { - - // If `msg` not provided, do not warn; more sophisticated warnings - // logic is most likely embedded in `newFunc`, in that case here - // we just care about the logic choosing the proper implementation - // based on whether the patch is disabled or not. - if ( msg ) { - migrateWarn( code, msg ); - } - - // Since patches can be disabled & enabled dynamically, we - // need to decide which implementation to run on each invocation. - finalFunc = jQuery.migrateIsPatchEnabled( code ) ? - newFunc : - - // The function may not have existed originally so we need a fallback. - ( origFunc || jQuery.noop ); - - return finalFunc.apply( this, arguments ); - }; -} - -function migratePatchAndWarnFunc( obj, prop, newFunc, code, msg ) { - if ( !msg ) { - throw new Error( "No warning message provided" ); - } - return migrateWarnFuncInternal( obj, prop, newFunc, code, msg ); -} - -function migratePatchFunc( obj, prop, newFunc, code ) { - return migrateWarnFuncInternal( obj, prop, newFunc, code ); -} - -if ( window.document.compatMode === "BackCompat" ) { - - // jQuery has never supported or tested Quirks Mode - migrateWarn( "quirks", "jQuery is not compatible with Quirks Mode" ); -} - -var findProp, - class2type = {}, - oldInit = jQuery.fn.init, - oldFind = jQuery.find, - - rattrHashTest = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/, - rattrHashGlob = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g, - - // Require that the "whitespace run" starts from a non-whitespace - // to avoid O(N^2) behavior when the engine would try matching "\s+$" at each space position. - rtrim = /^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g; - -migratePatchFunc( jQuery.fn, "init", function( arg1 ) { - var args = Array.prototype.slice.call( arguments ); - - if ( jQuery.migrateIsPatchEnabled( "selector-empty-id" ) && - typeof arg1 === "string" && arg1 === "#" ) { - - // JQuery( "#" ) is a bogus ID selector, but it returned an empty set - // before jQuery 3.0 - migrateWarn( "selector-empty-id", "jQuery( '#' ) is not a valid selector" ); - args[ 0 ] = []; - } - - return oldInit.apply( this, args ); -}, "selector-empty-id" ); - -// This is already done in Core but the above patch will lose this assignment -// so we need to redo it. It doesn't matter whether the patch is enabled or not -// as the method is always going to be a Migrate-created wrapper. -jQuery.fn.init.prototype = jQuery.fn; - -migratePatchFunc( jQuery, "find", function( selector ) { - var args = Array.prototype.slice.call( arguments ); - - // Support: PhantomJS 1.x - // String#match fails to match when used with a //g RegExp, only on some strings - if ( typeof selector === "string" && rattrHashTest.test( selector ) ) { - - // The nonstandard and undocumented unquoted-hash was removed in jQuery 1.12.0 - // First see if qS thinks it's a valid selector, if so avoid a false positive - try { - window.document.querySelector( selector ); - } catch ( err1 ) { - - // Didn't *look* valid to qSA, warn and try quoting what we think is the value - selector = selector.replace( rattrHashGlob, function( _, attr, op, value ) { - return "[" + attr + op + "\"" + value + "\"]"; - } ); - - // If the regexp *may* have created an invalid selector, don't update it - // Note that there may be false alarms if selector uses jQuery extensions - try { - window.document.querySelector( selector ); - migrateWarn( "selector-hash", - "Attribute selector with '#' must be quoted: " + args[ 0 ] ); - args[ 0 ] = selector; - } catch ( err2 ) { - migrateWarn( "selector-hash", - "Attribute selector with '#' was not fixed: " + args[ 0 ] ); - } - } - } - - return oldFind.apply( this, args ); -}, "selector-hash" ); - -// Copy properties attached to original jQuery.find method (e.g. .attr, .isXML) -for ( findProp in oldFind ) { - if ( Object.prototype.hasOwnProperty.call( oldFind, findProp ) ) { - jQuery.find[ findProp ] = oldFind[ findProp ]; - } -} - -// The number of elements contained in the matched element set -migratePatchAndWarnFunc( jQuery.fn, "size", function() { - return this.length; -}, "size", -"jQuery.fn.size() is deprecated and removed; use the .length property" ); - -migratePatchAndWarnFunc( jQuery, "parseJSON", function() { - return JSON.parse.apply( null, arguments ); -}, "parseJSON", -"jQuery.parseJSON is deprecated; use JSON.parse" ); - -migratePatchAndWarnFunc( jQuery, "holdReady", jQuery.holdReady, - "holdReady", "jQuery.holdReady is deprecated" ); - -migratePatchAndWarnFunc( jQuery, "unique", jQuery.uniqueSort, - "unique", "jQuery.unique is deprecated; use jQuery.uniqueSort" ); - -// Now jQuery.expr.pseudos is the standard incantation -migrateWarnProp( jQuery.expr, "filters", jQuery.expr.pseudos, "expr-pre-pseudos", - "jQuery.expr.filters is deprecated; use jQuery.expr.pseudos" ); -migrateWarnProp( jQuery.expr, ":", jQuery.expr.pseudos, "expr-pre-pseudos", - "jQuery.expr[':'] is deprecated; use jQuery.expr.pseudos" ); - -// Prior to jQuery 3.1.1 there were internal refs so we don't warn there -if ( jQueryVersionSince( "3.1.1" ) ) { - migratePatchAndWarnFunc( jQuery, "trim", function( text ) { - return text == null ? - "" : - ( text + "" ).replace( rtrim, "$1" ); - }, "trim", - "jQuery.trim is deprecated; use String.prototype.trim" ); -} - -// Prior to jQuery 3.2 there were internal refs so we don't warn there -if ( jQueryVersionSince( "3.2.0" ) ) { - migratePatchAndWarnFunc( jQuery, "nodeName", function( elem, name ) { - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); - }, "nodeName", - "jQuery.nodeName is deprecated" ); - - migratePatchAndWarnFunc( jQuery, "isArray", Array.isArray, "isArray", - "jQuery.isArray is deprecated; use Array.isArray" - ); -} - -if ( jQueryVersionSince( "3.3.0" ) ) { - - migratePatchAndWarnFunc( jQuery, "isNumeric", function( obj ) { - - // As of jQuery 3.0, isNumeric is limited to - // strings and numbers (primitives or objects) - // that can be coerced to finite numbers (gh-2662) - var type = typeof obj; - return ( type === "number" || type === "string" ) && - - // parseFloat NaNs numeric-cast false positives ("") - // ...but misinterprets leading-number strings, e.g. hex literals ("0x...") - // subtraction forces infinities to NaN - !isNaN( obj - parseFloat( obj ) ); - }, "isNumeric", - "jQuery.isNumeric() is deprecated" - ); - - // Populate the class2type map - jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol". - split( " " ), - function( _, name ) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); - } ); - - migratePatchAndWarnFunc( jQuery, "type", function( obj ) { - if ( obj == null ) { - return obj + ""; - } - - // Support: Android <=2.3 only (functionish RegExp) - return typeof obj === "object" || typeof obj === "function" ? - class2type[ Object.prototype.toString.call( obj ) ] || "object" : - typeof obj; - }, "type", - "jQuery.type is deprecated" ); - - migratePatchAndWarnFunc( jQuery, "isFunction", - function( obj ) { - return typeof obj === "function"; - }, "isFunction", - "jQuery.isFunction() is deprecated" ); - - migratePatchAndWarnFunc( jQuery, "isWindow", - function( obj ) { - return obj != null && obj === obj.window; - }, "isWindow", - "jQuery.isWindow() is deprecated" - ); -} - -// Support jQuery slim which excludes the ajax module -if ( jQuery.ajax ) { - -var oldAjax = jQuery.ajax, - rjsonp = /(=)\?(?=&|$)|\?\?/; - -migratePatchFunc( jQuery, "ajax", function() { - var jQXHR = oldAjax.apply( this, arguments ); - - // Be sure we got a jQXHR (e.g., not sync) - if ( jQXHR.promise ) { - migratePatchAndWarnFunc( jQXHR, "success", jQXHR.done, "jqXHR-methods", - "jQXHR.success is deprecated and removed" ); - migratePatchAndWarnFunc( jQXHR, "error", jQXHR.fail, "jqXHR-methods", - "jQXHR.error is deprecated and removed" ); - migratePatchAndWarnFunc( jQXHR, "complete", jQXHR.always, "jqXHR-methods", - "jQXHR.complete is deprecated and removed" ); - } - - return jQXHR; -}, "jqXHR-methods" ); - -// Only trigger the logic in jQuery <4 as the JSON-to-JSONP auto-promotion -// behavior is gone in jQuery 4.0 and as it has security implications, we don't -// want to restore the legacy behavior. -if ( !jQueryVersionSince( "4.0.0" ) ) { - - // Register this prefilter before the jQuery one. Otherwise, a promoted - // request is transformed into one with the script dataType and we can't - // catch it anymore. - jQuery.ajaxPrefilter( "+json", function( s ) { - - // Warn if JSON-to-JSONP auto-promotion happens. - if ( s.jsonp !== false && ( rjsonp.test( s.url ) || - typeof s.data === "string" && - ( s.contentType || "" ) - .indexOf( "application/x-www-form-urlencoded" ) === 0 && - rjsonp.test( s.data ) - ) ) { - migrateWarn( "jsonp-promotion", "JSON-to-JSONP auto-promotion is deprecated" ); - } - } ); -} - -} - -var oldRemoveAttr = jQuery.fn.removeAttr, - oldToggleClass = jQuery.fn.toggleClass, - rmatchNonSpace = /\S+/g; - -migratePatchFunc( jQuery.fn, "removeAttr", function( name ) { - var self = this, - patchNeeded = false; - - jQuery.each( name.match( rmatchNonSpace ), function( _i, attr ) { - if ( jQuery.expr.match.bool.test( attr ) ) { - - // Only warn if at least a single node had the property set to - // something else than `false`. Otherwise, this Migrate patch - // doesn't influence the behavior and there's no need to set or warn. - self.each( function() { - if ( jQuery( this ).prop( attr ) !== false ) { - patchNeeded = true; - return false; - } - } ); - } - - if ( patchNeeded ) { - migrateWarn( "removeAttr-bool", - "jQuery.fn.removeAttr no longer sets boolean properties: " + attr ); - self.prop( attr, false ); - } - } ); - - return oldRemoveAttr.apply( this, arguments ); -}, "removeAttr-bool" ); - -migratePatchFunc( jQuery.fn, "toggleClass", function( state ) { - - // Only deprecating no-args or single boolean arg - if ( state !== undefined && typeof state !== "boolean" ) { - - return oldToggleClass.apply( this, arguments ); - } - - migrateWarn( "toggleClass-bool", "jQuery.fn.toggleClass( boolean ) is deprecated" ); - - // Toggle entire class name of each element - return this.each( function() { - var className = this.getAttribute && this.getAttribute( "class" ) || ""; - - if ( className ) { - jQuery.data( this, "__className__", className ); - } - - // If the element has a class name or if we're passed `false`, - // then remove the whole classname (if there was one, the above saved it). - // Otherwise bring back whatever was previously saved (if anything), - // falling back to the empty string if nothing was stored. - if ( this.setAttribute ) { - this.setAttribute( "class", - className || state === false ? - "" : - jQuery.data( this, "__className__" ) || "" - ); - } - } ); -}, "toggleClass-bool" ); - -function camelCase( string ) { - return string.replace( /-([a-z])/g, function( _, letter ) { - return letter.toUpperCase(); - } ); -} - -var origFnCss, internalCssNumber, - internalSwapCall = false, - ralphaStart = /^[a-z]/, - - // The regex visualized: - // - // /----------\ - // | | /-------\ - // | / Top \ | | | - // /--- Border ---+-| Right |-+---+- Width -+---\ - // | | Bottom | | - // | \ Left / | - // | | - // | /----------\ | - // | /-------------\ | | |- END - // | | | | / Top \ | | - // | | / Margin \ | | | Right | | | - // |---------+-| |-+---+-| Bottom |-+----| - // | \ Padding / \ Left / | - // BEGIN -| | - // | /---------\ | - // | | | | - // | | / Min \ | / Width \ | - // \--------------+-| |-+---| |---/ - // \ Max / \ Height / - rautoPx = /^(?:Border(?:Top|Right|Bottom|Left)?(?:Width|)|(?:Margin|Padding)?(?:Top|Right|Bottom|Left)?|(?:Min|Max)?(?:Width|Height))$/; - -// If this version of jQuery has .swap(), don't false-alarm on internal uses -if ( jQuery.swap ) { - jQuery.each( [ "height", "width", "reliableMarginRight" ], function( _, name ) { - var oldHook = jQuery.cssHooks[ name ] && jQuery.cssHooks[ name ].get; - - if ( oldHook ) { - jQuery.cssHooks[ name ].get = function() { - var ret; - - internalSwapCall = true; - ret = oldHook.apply( this, arguments ); - internalSwapCall = false; - return ret; - }; - } - } ); -} - -migratePatchFunc( jQuery, "swap", function( elem, options, callback, args ) { - var ret, name, - old = {}; - - if ( !internalSwapCall ) { - migrateWarn( "swap", "jQuery.swap() is undocumented and deprecated" ); - } - - // Remember the old values, and insert the new ones - for ( name in options ) { - old[ name ] = elem.style[ name ]; - elem.style[ name ] = options[ name ]; - } - - ret = callback.apply( elem, args || [] ); - - // Revert the old values - for ( name in options ) { - elem.style[ name ] = old[ name ]; - } - - return ret; -}, "swap" ); - -if ( jQueryVersionSince( "3.4.0" ) && typeof Proxy !== "undefined" ) { - jQuery.cssProps = new Proxy( jQuery.cssProps || {}, { - set: function() { - migrateWarn( "cssProps", "jQuery.cssProps is deprecated" ); - return Reflect.set.apply( this, arguments ); - } - } ); -} - -// In jQuery >=4 where jQuery.cssNumber is missing fill it with the latest 3.x version: -// https://github.com/jquery/jquery/blob/3.6.0/src/css.js#L212-L233 -// This way, number values for the CSS properties below won't start triggering -// Migrate warnings when jQuery gets updated to >=4.0.0 (gh-438). -if ( jQueryVersionSince( "4.0.0" ) ) { - - // We need to keep this as a local variable as we need it internally - // in a `jQuery.fn.css` patch and this usage shouldn't warn. - internalCssNumber = { - animationIterationCount: true, - columnCount: true, - fillOpacity: true, - flexGrow: true, - flexShrink: true, - fontWeight: true, - gridArea: true, - gridColumn: true, - gridColumnEnd: true, - gridColumnStart: true, - gridRow: true, - gridRowEnd: true, - gridRowStart: true, - lineHeight: true, - opacity: true, - order: true, - orphans: true, - widows: true, - zIndex: true, - zoom: true - }; - - if ( typeof Proxy !== "undefined" ) { - jQuery.cssNumber = new Proxy( internalCssNumber, { - get: function() { - migrateWarn( "css-number", "jQuery.cssNumber is deprecated" ); - return Reflect.get.apply( this, arguments ); - }, - set: function() { - migrateWarn( "css-number", "jQuery.cssNumber is deprecated" ); - return Reflect.set.apply( this, arguments ); - } - } ); - } else { - - // Support: IE 9-11+ - // IE doesn't support proxies, but we still want to restore the legacy - // jQuery.cssNumber there. - jQuery.cssNumber = internalCssNumber; - } -} else { - - // Make `internalCssNumber` defined for jQuery <4 as well as it's needed - // in the `jQuery.fn.css` patch below. - internalCssNumber = jQuery.cssNumber; -} - -function isAutoPx( prop ) { - - // The first test is used to ensure that: - // 1. The prop starts with a lowercase letter (as we uppercase it for the second regex). - // 2. The prop is not empty. - return ralphaStart.test( prop ) && - rautoPx.test( prop[ 0 ].toUpperCase() + prop.slice( 1 ) ); -} - -origFnCss = jQuery.fn.css; - -migratePatchFunc( jQuery.fn, "css", function( name, value ) { - var camelName, - origThis = this; - - if ( name && typeof name === "object" && !Array.isArray( name ) ) { - jQuery.each( name, function( n, v ) { - jQuery.fn.css.call( origThis, n, v ); - } ); - return this; - } - - if ( typeof value === "number" ) { - camelName = camelCase( name ); - - // Use `internalCssNumber` to avoid triggering our warnings in this - // internal check. - if ( !isAutoPx( camelName ) && !internalCssNumber[ camelName ] ) { - migrateWarn( "css-number", - "Number-typed values are deprecated for jQuery.fn.css( \"" + - name + "\", value )" ); - } - } - - return origFnCss.apply( this, arguments ); -}, "css-number" ); - -var origData = jQuery.data; - -migratePatchFunc( jQuery, "data", function( elem, name, value ) { - var curData, sameKeys, key; - - // Name can be an object, and each entry in the object is meant to be set as data - if ( name && typeof name === "object" && arguments.length === 2 ) { - - curData = jQuery.hasData( elem ) && origData.call( this, elem ); - sameKeys = {}; - for ( key in name ) { - if ( key !== camelCase( key ) ) { - migrateWarn( "data-camelCase", - "jQuery.data() always sets/gets camelCased names: " + key ); - curData[ key ] = name[ key ]; - } else { - sameKeys[ key ] = name[ key ]; - } - } - - origData.call( this, elem, sameKeys ); - - return name; - } - - // If the name is transformed, look for the un-transformed name in the data object - if ( name && typeof name === "string" && name !== camelCase( name ) ) { - - curData = jQuery.hasData( elem ) && origData.call( this, elem ); - if ( curData && name in curData ) { - migrateWarn( "data-camelCase", - "jQuery.data() always sets/gets camelCased names: " + name ); - if ( arguments.length > 2 ) { - curData[ name ] = value; - } - return curData[ name ]; - } - } - - return origData.apply( this, arguments ); -}, "data-camelCase" ); - -// Support jQuery slim which excludes the effects module -if ( jQuery.fx ) { - -var intervalValue, intervalMsg, - oldTweenRun = jQuery.Tween.prototype.run, - linearEasing = function( pct ) { - return pct; - }; - -migratePatchFunc( jQuery.Tween.prototype, "run", function( ) { - if ( jQuery.easing[ this.easing ].length > 1 ) { - migrateWarn( - "easing-one-arg", - "'jQuery.easing." + this.easing.toString() + "' should use only one argument" - ); - - jQuery.easing[ this.easing ] = linearEasing; - } - - oldTweenRun.apply( this, arguments ); -}, "easing-one-arg" ); - -intervalValue = jQuery.fx.interval; -intervalMsg = "jQuery.fx.interval is deprecated"; - -// Support: IE9, Android <=4.4 -// Avoid false positives on browsers that lack rAF -// Don't warn if document is hidden, jQuery uses setTimeout (#292) -if ( window.requestAnimationFrame ) { - Object.defineProperty( jQuery.fx, "interval", { - configurable: true, - enumerable: true, - get: function() { - if ( !window.document.hidden ) { - migrateWarn( "fx-interval", intervalMsg ); - } - - // Only fallback to the default if patch is enabled - if ( !jQuery.migrateIsPatchEnabled( "fx-interval" ) ) { - return intervalValue; - } - return intervalValue === undefined ? 13 : intervalValue; - }, - set: function( newValue ) { - migrateWarn( "fx-interval", intervalMsg ); - intervalValue = newValue; - } - } ); -} - -} - -var oldLoad = jQuery.fn.load, - oldEventAdd = jQuery.event.add, - originalFix = jQuery.event.fix; - -jQuery.event.props = []; -jQuery.event.fixHooks = {}; - -migrateWarnProp( jQuery.event.props, "concat", jQuery.event.props.concat, - "event-old-patch", - "jQuery.event.props.concat() is deprecated and removed" ); - -migratePatchFunc( jQuery.event, "fix", function( originalEvent ) { - var event, - type = originalEvent.type, - fixHook = this.fixHooks[ type ], - props = jQuery.event.props; - - if ( props.length ) { - migrateWarn( "event-old-patch", - "jQuery.event.props are deprecated and removed: " + props.join() ); - while ( props.length ) { - jQuery.event.addProp( props.pop() ); - } - } - - if ( fixHook && !fixHook._migrated_ ) { - fixHook._migrated_ = true; - migrateWarn( "event-old-patch", - "jQuery.event.fixHooks are deprecated and removed: " + type ); - if ( ( props = fixHook.props ) && props.length ) { - while ( props.length ) { - jQuery.event.addProp( props.pop() ); - } - } - } - - event = originalFix.call( this, originalEvent ); - - return fixHook && fixHook.filter ? - fixHook.filter( event, originalEvent ) : - event; -}, "event-old-patch" ); - -migratePatchFunc( jQuery.event, "add", function( elem, types ) { - - // This misses the multiple-types case but that seems awfully rare - if ( elem === window && types === "load" && window.document.readyState === "complete" ) { - migrateWarn( "load-after-event", - "jQuery(window).on('load'...) called after load event occurred" ); - } - return oldEventAdd.apply( this, arguments ); -}, "load-after-event" ); - -jQuery.each( [ "load", "unload", "error" ], function( _, name ) { - - migratePatchFunc( jQuery.fn, name, function() { - var args = Array.prototype.slice.call( arguments, 0 ); - - // If this is an ajax load() the first arg should be the string URL; - // technically this could also be the "Anything" arg of the event .load() - // which just goes to show why this dumb signature has been deprecated! - // jQuery custom builds that exclude the Ajax module justifiably die here. - if ( name === "load" && typeof args[ 0 ] === "string" ) { - return oldLoad.apply( this, args ); - } - - migrateWarn( "shorthand-removed-v3", - "jQuery.fn." + name + "() is deprecated" ); - - args.splice( 0, 0, name ); - if ( arguments.length ) { - return this.on.apply( this, args ); - } - - // Use .triggerHandler here because: - // - load and unload events don't need to bubble, only applied to window or image - // - error event should not bubble to window, although it does pre-1.7 - // See http://bugs.jquery.com/ticket/11820 - this.triggerHandler.apply( this, args ); - return this; - }, "shorthand-removed-v3" ); - -} ); - -jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " + - "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + - "change select submit keydown keypress keyup contextmenu" ).split( " " ), - function( _i, name ) { - - // Handle event binding - migratePatchAndWarnFunc( jQuery.fn, name, function( data, fn ) { - return arguments.length > 0 ? - this.on( name, null, data, fn ) : - this.trigger( name ); - }, - "shorthand-deprecated-v3", - "jQuery.fn." + name + "() event shorthand is deprecated" ); -} ); - -// Trigger "ready" event only once, on document ready -jQuery( function() { - jQuery( window.document ).triggerHandler( "ready" ); -} ); - -jQuery.event.special.ready = { - setup: function() { - if ( this === window.document ) { - migrateWarn( "ready-event", "'ready' event is deprecated" ); - } - } -}; - -migratePatchAndWarnFunc( jQuery.fn, "bind", function( types, data, fn ) { - return this.on( types, null, data, fn ); -}, "pre-on-methods", "jQuery.fn.bind() is deprecated" ); -migratePatchAndWarnFunc( jQuery.fn, "unbind", function( types, fn ) { - return this.off( types, null, fn ); -}, "pre-on-methods", "jQuery.fn.unbind() is deprecated" ); -migratePatchAndWarnFunc( jQuery.fn, "delegate", function( selector, types, data, fn ) { - return this.on( types, selector, data, fn ); -}, "pre-on-methods", "jQuery.fn.delegate() is deprecated" ); -migratePatchAndWarnFunc( jQuery.fn, "undelegate", function( selector, types, fn ) { - return arguments.length === 1 ? - this.off( selector, "**" ) : - this.off( types, selector || "**", fn ); -}, "pre-on-methods", "jQuery.fn.undelegate() is deprecated" ); -migratePatchAndWarnFunc( jQuery.fn, "hover", function( fnOver, fnOut ) { - return this.on( "mouseenter", fnOver ).on( "mouseleave", fnOut || fnOver ); -}, "pre-on-methods", "jQuery.fn.hover() is deprecated" ); - -var rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi, - makeMarkup = function( html ) { - var doc = window.document.implementation.createHTMLDocument( "" ); - doc.body.innerHTML = html; - return doc.body && doc.body.innerHTML; - }, - warnIfChanged = function( html ) { - var changed = html.replace( rxhtmlTag, "<$1>" ); - if ( changed !== html && makeMarkup( html ) !== makeMarkup( changed ) ) { - migrateWarn( "self-closed-tags", - "HTML tags must be properly nested and closed: " + html ); - } - }; - -/** - * Deprecated, please use `jQuery.migrateDisablePatches( "self-closed-tags" )` instead. - * @deprecated - */ -jQuery.UNSAFE_restoreLegacyHtmlPrefilter = function() { - jQuery.migrateEnablePatches( "self-closed-tags" ); -}; - -migratePatchFunc( jQuery, "htmlPrefilter", function( html ) { - warnIfChanged( html ); - return html.replace( rxhtmlTag, "<$1>" ); -}, "self-closed-tags" ); - -// This patch needs to be disabled by default as it re-introduces -// security issues (CVE-2020-11022, CVE-2020-11023). -jQuery.migrateDisablePatches( "self-closed-tags" ); - -var origOffset = jQuery.fn.offset; - -migratePatchFunc( jQuery.fn, "offset", function() { - var elem = this[ 0 ]; - - if ( elem && ( !elem.nodeType || !elem.getBoundingClientRect ) ) { - migrateWarn( "offset-valid-elem", "jQuery.fn.offset() requires a valid DOM element" ); - return arguments.length ? this : undefined; - } - - return origOffset.apply( this, arguments ); -}, "offset-valid-elem" ); - -// Support jQuery slim which excludes the ajax module -// The jQuery.param patch is about respecting `jQuery.ajaxSettings.traditional` -// so it doesn't make sense for the slim build. -if ( jQuery.ajax ) { - -var origParam = jQuery.param; - -migratePatchFunc( jQuery, "param", function( data, traditional ) { - var ajaxTraditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional; - - if ( traditional === undefined && ajaxTraditional ) { - - migrateWarn( "param-ajax-traditional", - "jQuery.param() no longer uses jQuery.ajaxSettings.traditional" ); - traditional = ajaxTraditional; - } - - return origParam.call( this, data, traditional ); -}, "param-ajax-traditional" ); - -} - -migratePatchAndWarnFunc( jQuery.fn, "andSelf", jQuery.fn.addBack, "andSelf", - "jQuery.fn.andSelf() is deprecated and removed, use jQuery.fn.addBack()" ); - -// Support jQuery slim which excludes the deferred module in jQuery 4.0+ -if ( jQuery.Deferred ) { - -var oldDeferred = jQuery.Deferred, - tuples = [ - - // Action, add listener, callbacks, .then handlers, final state - [ "resolve", "done", jQuery.Callbacks( "once memory" ), - jQuery.Callbacks( "once memory" ), "resolved" ], - [ "reject", "fail", jQuery.Callbacks( "once memory" ), - jQuery.Callbacks( "once memory" ), "rejected" ], - [ "notify", "progress", jQuery.Callbacks( "memory" ), - jQuery.Callbacks( "memory" ) ] - ]; - -migratePatchFunc( jQuery, "Deferred", function( func ) { - var deferred = oldDeferred(), - promise = deferred.promise(); - - function newDeferredPipe( /* fnDone, fnFail, fnProgress */ ) { - var fns = arguments; - - return jQuery.Deferred( function( newDefer ) { - jQuery.each( tuples, function( i, tuple ) { - var fn = typeof fns[ i ] === "function" && fns[ i ]; - - // Deferred.done(function() { bind to newDefer or newDefer.resolve }) - // deferred.fail(function() { bind to newDefer or newDefer.reject }) - // deferred.progress(function() { bind to newDefer or newDefer.notify }) - deferred[ tuple[ 1 ] ]( function() { - var returned = fn && fn.apply( this, arguments ); - if ( returned && typeof returned.promise === "function" ) { - returned.promise() - .done( newDefer.resolve ) - .fail( newDefer.reject ) - .progress( newDefer.notify ); - } else { - newDefer[ tuple[ 0 ] + "With" ]( - this === promise ? newDefer.promise() : this, - fn ? [ returned ] : arguments - ); - } - } ); - } ); - fns = null; - } ).promise(); - } - - migratePatchAndWarnFunc( deferred, "pipe", newDeferredPipe, "deferred-pipe", - "deferred.pipe() is deprecated" ); - migratePatchAndWarnFunc( promise, "pipe", newDeferredPipe, "deferred-pipe", - "deferred.pipe() is deprecated" ); - - if ( func ) { - func.call( deferred, deferred ); - } - - return deferred; -}, "deferred-pipe" ); - -// Preserve handler of uncaught exceptions in promise chains -jQuery.Deferred.exceptionHook = oldDeferred.exceptionHook; - -} - -return jQuery; -} ); diff --git a/static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.min.js b/static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.min.js deleted file mode 100644 index 29a4939d..00000000 --- a/static/lib/jquery-migrate-3.4.1/jquery-migrate-3.4.1.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery Migrate v3.4.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ -"undefined"==typeof jQuery.migrateMute&&(jQuery.migrateMute=!0),function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],function(e){return t(e,window)}):"object"==typeof module&&module.exports?module.exports=t(require("jquery"),window):t(jQuery,window)}(function(s,n){"use strict";function e(e){return 0<=function(e,t){for(var r=/^(\d+)\.(\d+)\.(\d+)/,n=r.exec(e)||[],o=r.exec(t)||[],a=1;a<=3;a++){if(+o[a]<+n[a])return 1;if(+n[a]<+o[a])return-1}return 0}(s.fn.jquery,e)}s.migrateVersion="3.4.1";var t=Object.create(null);s.migrateDisablePatches=function(){for(var e=0;e\x20\t\r\n\f]*)[^>]*)\/>/gi;s.UNSAFE_restoreLegacyHtmlPrefilter=function(){s.migrateEnablePatches("self-closed-tags")},i(s,"htmlPrefilter",function(e){var t,r;return(r=(t=e).replace(F,"<$1>"))!==t&&T(t)!==T(r)&&u("self-closed-tags","HTML tags must be properly nested and closed: "+t),e.replace(F,"<$1>")},"self-closed-tags"),s.migrateDisablePatches("self-closed-tags");var D,W,_,I=s.fn.offset;return i(s.fn,"offset",function(){var e=this[0];return!e||e.nodeType&&e.getBoundingClientRect?I.apply(this,arguments):(u("offset-valid-elem","jQuery.fn.offset() requires a valid DOM element"),arguments.length?this:void 0)},"offset-valid-elem"),s.ajax&&(D=s.param,i(s,"param",function(e,t){var r=s.ajaxSettings&&s.ajaxSettings.traditional;return void 0===t&&r&&(u("param-ajax-traditional","jQuery.param() no longer uses jQuery.ajaxSettings.traditional"),t=r),D.call(this,e,t)},"param-ajax-traditional")),c(s.fn,"andSelf",s.fn.addBack,"andSelf","jQuery.fn.andSelf() is deprecated and removed, use jQuery.fn.addBack()"),s.Deferred&&(W=s.Deferred,_=[["resolve","done",s.Callbacks("once memory"),s.Callbacks("once memory"),"resolved"],["reject","fail",s.Callbacks("once memory"),s.Callbacks("once memory"),"rejected"],["notify","progress",s.Callbacks("memory"),s.Callbacks("memory")]],i(s,"Deferred",function(e){var a=W(),i=a.promise();function t(){var o=arguments;return s.Deferred(function(n){s.each(_,function(e,t){var r="function"==typeof o[e]&&o[e];a[t[1]](function(){var e=r&&r.apply(this,arguments);e&&"function"==typeof e.promise?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[t[0]+"With"](this===i?n.promise():this,r?[e]:arguments)})}),o=null}).promise()}return c(a,"pipe",t,"deferred-pipe","deferred.pipe() is deprecated"),c(i,"pipe",t,"deferred-pipe","deferred.pipe() is deprecated"),e&&e.call(a,a),a},"deferred-pipe"),s.Deferred.exceptionHook=W.exceptionHook),s}); diff --git a/user/user.py b/user/user.py index 5036a66a..172cada3 100644 --- a/user/user.py +++ b/user/user.py @@ -436,9 +436,6 @@ def irods_login(username: str, password: str) -> None: **app.config.get('IRODS_SESSION_OPTIONS') ) - if app.config.get('INTAKE_ENABLED'): - irods.connection_timeout = app.config.get('INTAKE_EXT_TIMEOUT', 120) - # This implicitly creates connections, and raises an exception on failure _ = irods.server_version