diff --git a/app/assets/stylesheets/application.css.scss.erb b/app/assets/stylesheets/application.css.scss.erb index 29e694ce7f..ecdd263f5c 100755 --- a/app/assets/stylesheets/application.css.scss.erb +++ b/app/assets/stylesheets/application.css.scss.erb @@ -45,7 +45,6 @@ @import "recommender"; @import "search"; @import "submissions"; -@import "tree"; @import "ontology_viewer"; @import "upload_ontology"; @import "edit-ontology"; diff --git a/app/assets/stylesheets/tree.scss b/app/assets/stylesheets/tree.scss deleted file mode 100644 index 0697a56b5f..0000000000 --- a/app/assets/stylesheets/tree.scss +++ /dev/null @@ -1,328 +0,0 @@ -/******************** -## TREE VIEW -*********************/ -#tree_wrapper { - max-height: 75vh; - overflow-y: auto; -} - -div.tree_error { - background: none repeat scroll 0 0 lightYellow; - font-weight: 600; - padding: 5px 10px; -} -.expansion_error { - color: red; - font-size: x-small; - font-style: oblique; - padding: 0 3px; -} -.ncboTree { - margin:0; - padding:0; - font-family: sans-serif; -} -.ncboTree li { - list-style: none; - margin:0; - padding:0 0 0 22px; - line-height: 14px; -} -.ncboTree li span { - display:inline; - clear: left; - white-space: nowrap; -} -.ncboTree ul { - margin:0; - padding:0; -} -.ncboTree .root ul { - margin:0; -} -.ncboTree .root { - margin-left:-16px !important; -} -.ncboTree .line { - padding:0; - line-height: 3px; - height:3px; - font-size:3px; - background: 0 0 no-repeat transparent url(data:image/gif;base64,R0lGODlhUAAUAIABAICAgP///yH5BAEAAAEALAAAAABQABQAAAI0jI+py+0PG4i02ouz3mryD4bi+HjkiabqYq7uC2NtTNd2MN/6Tub8D5QFh8SKr4hEHpOQAgA7); -} -.ncboTree .line-last { - padding:0; - line-height: 3px; - height:3px; - font-size:3px; - background: 0 0 no-repeat transparent url(data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==); -} -.ncboTree .line-over { - padding:0; - line-height: 3px; - height:3px; - font-size:3px; - background: 0 0 no-repeat transparent url(data:image/gif;base64,R0lGODlhUAAUAMQfAICAgEVFRUZHRoKBgUlISKKionl6enJycmRkY2tra/Ly81JSUpGRkaqqq8rLyrOzstnZ2cLDwk1NTfv8+/f39+zt7Lq7u+fn5lhYV////15eXuDg4NLS0omKipqamf///yH5BAEAAB8ALAAAAABQABQAAAV44CeOH0CSQXCubOu+cAwHAvFJ3/Jhn/Yhn8Tn8DF8Bp/Oh/HxfAqfxufxsXwiH8eH84F8Np/Lp/JRfCifyScjM7FSsrh8Tq/b73Q3fs/v+/9zeoCDhIWGMIKHiouMeImNkJGSJI+TlpeFlZibnHeanaChL5+ipZshADs=); -} -.ncboTree .line-over-last { - padding:0; - line-height: 3px; - height:3px; - font-size:3px; - background: 0 0 no-repeat transparent url(data:image/gif;base64,R0lGODlhUAAUAMQeAEVFRWtra+fn5k1NTWRkY3l6enJycklISMrLyvLy8////5qamV5eXvf397q7u1hYV8LDwkZHRoKBgbOzspGRkVJSUtnZ2eDg4Ozt7Pv8+6qqq9LS0omKiqKiov///wAAACH5BAEAAB4ALAAAAABQABQAAAVooCeOZOkBgKmubOu+8AhEhzd4lfd4jEd4AY/BU/BIPBwPxbPwdDwaz8Tj8EA8CM/GY/FcPAIPxpPwNDwZjyK2QrHf8Lh8Tq/b7/i8fs/v+/+AgYKDhIWGh4iJiouMjY6PkJGSk5SViSEAOw==); -} -.ncboTree .folder-open { - background: 0 -2px no-repeat #fff url(data:image/gif;base64,R0lGODlhEQC6BOYAAICAgP//nHueu8aaGfn7+f/4k8TExP/////bdf/vif/kf///mQQCBMS+uaVzDcyZNM/PvNrYyuzs6OTe1s3Nzevz+7fG18mWMfr7/MuYM///paBuCJpoAsXFxZ5sBpxqBNDc58+iJqRyDPfwiZlnAf/XhMzLx6NxC7q6tNe4QLqHIsiVMJKvx523zad1D9q/bLB+GL/M2/r7+n2fvLOBG36gvb2KJfDkesKPKuKzQ7WCHf/rhMmgIbeEH6JwCsaaGv3VcOLBUKx6FNHR0fH097e3t////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEYALAAAAAARALoEAAf/gEaCg4SFhoMAh4qLi4mMRkQgLTMClQIWiiwyBJydAooCnaKfh6GiFROkhqEMra0Rn4mOggIVFRK4E7CguhEQvyaqhQIQDcYNKA3ChDE1lpaYj7OP1IfT1diC19nV29zS39ze4Yrj5Ibm54Tp6trt4O+N8fLz1vX294Xs7fvq/ef/yAUMN/BbQXH59CVctxBRQ3cPD2aTiI1it4dGLFLTCK8hR0Yf6XnEGLIcyZMRUY5MyXKly4Ul8b1MGBOdSpg3aebMV1NhS5w/dQblufNeT4ZDjRatd9RhUqZL5zWFOJPoU6lR403NmPXd1q9d+YX1NxZgWYFnCaY1uBbhVa1t/yfGrTj34luvdTfm7Qi0qtK7YgGTFWyWMFrDahGzVezWL1TGciHTlWzXMVbKejHzFWoZrmaQe0F/Ftm3NGfTVjvjHW2StUzUf1UHlj2YdmHbh3En1r2Yd2PYj31HFj6ZeGXgl41nVr45NXLPzEVHJ326unPrsZ+vnt6a+2vswbXPFl+b/G3zudHvVt+b/W/wyd0Pl1+c/nH40O0v1988O/7t/EkXIHXXFeifgeH9N56C5TF4noPpQbiehO1R+B6C8Vk4n4b1cXgfhvl5uJ+I/SUIIoAkCpgigQe2aKKLGZ64oIwN0vigjRHiOKGOFfJ4IYwh+rihkB0S+SGQKBo5ov+SJcaI5IxP1hjljVPmWOWOV/aY5Y8vdumkl0FuOaSYRZJ5JJhJmrmkmk2GiSaUb0oZJ5VzWlknlndqmSeXX/bppp9p7jmmoGUSeiagcCIqp6J0Mmqno3hCqqekfP5paaCUDpppoZseemminy4aaqOjPlpqpKdOmmqlmK6qqaucwuppq7SCWquot5Kaq6m7otqrqr+yauuwuBKrq7G8IuurssAyK2yx0B4bbbLTLltts9c+K+221HJrrbfYgqttt+R+W264545r7rrosqtuu/C+K++rwdLrrL3Z4iuuvuny666/8QI8b6z1EnyvwfkivK/C/TL8r8MBQzzwrAdTnLBYxQtj3LDGD3McsccTr2moyJ2SLKvJBYMs8MoSs6xyyzC/LDPKFdN8sc0Z47yxzh3z/LHPIbeZMtAuEx2z0TMLXbPSNzOds9M7Q92z1D9THTRGWGetdTiBAAA7); -} -.ncboTree .folder-open-last { - background: 0 -2px no-repeat #fff url(data:image/gif;base64,R0lGODlhEQAWAOYAAP/bdf/vif/kf///mQQCBMS+uaVzDc/PvICAgNrYysyZNM3Nzevz++zs6OTe1smWMcXFxbfG15poAp5sBv//pZxqBPr7/MuYM6BuCLWCHX6gvdHR0cKPKuLBULB+GJlnAdq/bPfwiaRyDLe3t7eEH7q6tOKzQ7/M28mgIciVMNDc58+iJvr7+qx6FPDkeszLx7OBG5Kvx/3VcLqHIp23zb2KJcaaGqNxC6JwCv/rhH2fvNe4QP/XhPH096d1D8TExP/4k/n7+caaGXueu///nP///////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEYALAAAAAARABYAAAdcgEaCg4SFhoMIh4qLi4mMj4c9KjQ6Q5ZDEYoxLEGdnkOKQ56joIeiowwOpYaiBK6uCaCJjoJDDAwNuQ6xobsJB8Avq4VDBwXHBSUFw4QnGpeXmZDT1NXW19jZ1oEAOw==); -} -.ncboTree .folder-close-last { - background: 0 -2px no-repeat #fff url(data:image/gif;base64,R0lGODlhEgAWAOYAAOvr6//bdf//nP/vif/kf//4k//UbwQCBO/v78S+ufv7+9u3UoCAgNrYysyZNMHBwevz++Tk5M/PvOTe1smWMcKPKpxqBLB+GLOBG72KJaBuCP//uuzs6LfG17e3t5lnAbWCHdu3caNxC55sBsuYM7qHIsCNKLq6tMiVMKx6FMbGxp23zceUL/r7+q58Fr/M26VzDbeEH6d1D32fvKt5E/H0936gvZKvx6h2EJpoAqampszLx8WSLdDc57a2tvn7+Xueu///////mf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEMALAAAAAASABYAAAdfgEOCg4SFhoQMh4qLjEOJjZCHNT0rM0CXQB2LNy0/np9Ai0CfB6CipD8QE6GKowevrw2hiY+DQBAQHAccE7KivQ0HEhI7rIdAEgnKCScJxoYvNpiYmpHW19jZ2tvc2YEAOw==); -} -.ncboTree .folder-close { - background: 0 -2px no-repeat #fff url(data:image/gif;base64,R0lGODlhEgC+BOYAAICAgP//mXueu/n7+f///7a2tuvr6//Ub//4k///nP/vif/bdf/kfwQCBPv7++/v78S+udu3UtrYysyZNOTe1sHBwc/PvOTk5Ovz++zs6Nu3cbB+GLqHIrfG16BuCJlnAf//usmWMcKPKrWCHcuYM5xqBL2KJbOBG55sBqNxC7e3t8iVMJ23zcCNKKt5E6h2ELq6tL/M26ampreEH/H098bGxn6gvczLx8WSLceUL658Fn2fvPr7+qVzDad1D6x6FJKvx5poAtDc5////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEMALAAAAAASAL4EAAf/gEOCg4SFhoQAh4qLjEOJjUM0Qiw7ApYCHYtAPAOdngKLAp4Nn6GjAxgUoIqiDa6uEqCJj4MCGBgZDRkUsaG8Eg0WFjerhwIWEMkQMBDFhjE2l5eZkLSQ14fW2NuC2tzY3t/V4t/h5Ivm59nq4OzX6e6D8PGO9Izz8fju+uz86v7nAJITKI5gOXvoECoyyI3hNoftFBqC+E7iRIuFKI7DKI9jR4/1QGpsNPIeyJAeSyYUeVLlwpYwWcpMGZPmTI4u193EmPPiTos9M9bEOZRnUaBHJQZFlFTh0o82oxL9qbQpwqfdrNrDinKqVKNUnWqlx7Xs2Hxn96Xtt/Zf24Bv/wfGLTj3YNirdRvmfbg34lekd7f2rRiY7OCNf6sWRrtYbWO2j91GhjtZbmW6l+0mFptZb2e+n/16HQ12M97QhE0LRo2YNGDVhlmTPDxbtknbK2Ez1u2YN2TfkoFTFm6ZOGbjml0rRu6ZOWjnoksr5ww99fTT1VtL3/76+urstcHfFp/be2zyL3GnR6+TvU/3QtW3N7+bfm/7v/EH1z+cf3H/xwGYHHfLCdicgc8hGF13BFKnoHUNYvegdgxWWGCE300YnobjcVgehud5uJ6I84FYn4n3oZifivux2J+L/8EYoIwDWuggjQfimKCOC15oo4Q8QvhjhkFS6OORNw4ZYv+RGzLZoZMfKnmilClSuaKVLWL5opYxcjmjlzUiCSSYOZK5o5k9JikmkWgKueaSbRqp5pxjvjmlnVXieaWeWfK5pZ9dAvqloGHSySahZSJ6pqJp1mkonIy6+eidk+ZZ6Z6X9pnpn5sG2umgnxbq6KiHhpqoqYui2mippEKqqqStUhqrpbNiWqumt3Kaq6e7gtqrqKwG6+qvpxKbqrGrDiusrMvS2qytz+Iara7T8lqtr9cCq+y2zHLrrLfQgiutuNSSa6252KKrbbfsfttuuO+OG2+5855bb7r3ruvuvvDyK6+/9AJsr8D4Eqxvvwj/m3DACw/ccMEPH6zwxAxT7LBixRBjLHHFHF/cccYfb+zxyCCTLHLJKJ+scrHZsqyuy/nCbLDMEdOssc0h42yyzinzvPKxLQP9stAxEz2z0TUjfbPSOTO9s9M9Q/1zskVTfbTVSWO9tNZNn+T112CHLTY3gQAAOw==); -} -.ncboTree .doc { - background: 0 -1px no-repeat #fff url(data:image/gif;base64,R0lGODlhEgC4BOYAAICAgNvt/3V4o+Hw/+n1/+vr67e3t7a2tv///8nk/4ep3NHp/3SAsvj7/+32//v7++/v78HBwf39/djr//P5/8Df/8Ph//7//+Tk5Gdtnvz9/213qIGVw2lwotvn98bGxoyu33J8rpOq0n2Jto+z5fT09X+OvMDA//n5+W96rOTx/4SbyvX6/2t0pf7+/nN+sIqo2fb6/9jl9s7T/2Vqml5hkPf399nh7ZK877rd/83m/3qDsJS/8lWn7ZCjy87n/5G46oeh0v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEIALAAAAAASALgEAAf/gEKCg4SFhoQAh4qLjEKJjZCNj5GUhpOVmI6aiZyZjJeekaChkqSVo6aKqKmWrJCrroOwsZq0qra3uK26hbOxvq7ArMKpxKbGpMihyp7Mmc6Y0Ke8vdSI1rLYgtKU3KLatdjer+Djpdrmn+Xr6Ozi7tbpi/K57+339vnx8NT0h/679PXjxwtgNXz7EA5UWJCgLoPXGD50iAtiNokVKdqyuE0jLY7hEgpsiHGjx18ng6UctrJYy2Mvk8VcNrNZzWc3o+WcVvLjzm4/v/VEOVRlUZZHXSaFuVRmU5pPbUbFOVVnVZ4jJ14FulVo1oxdyYU999XkWHVn5wUVW9Zn2noi/+MubEuUrlG7SPEq1cuUr1O/UAFLFUyVsFXDWOWSRMyVsVfFWh2zhQxWMlnKZi2j1az27b+1l+didssZrujTi0fXVX2XdV7Xe2H3lf2XdmDbg3EX1n2Yd2LUkX03Fv4YeGXik41nRh46tXLSzDdH71z6s+eA00073x78+WrvrcG/Fh+b/GzztdHfVp+b/W73veH/5n5c/nD7xekvx59cP3T+zXXn33cDhlfgeAeWl+B5C6bX4HoPthfhexPGV+F8AmZY34X3cZifhvt52B+I/4kY4IYkEpiigSsi2KKCLzIYo4MzQlijhDdSmKOFO2KI4o8h9tihkB8CWSKRIxqpov+SLDLpopMwQimjlDRSaaOVOGKpo5Y8culjkF4OGWaRYJZ55JhJmrmkmk2y+aSbUcI5pZxV0nmlnVniuaWeXfL55Zl+ihkomYAWuqahbSL6pqJxMjqno3VCeqekeVK6p6V9YvrnoZwm2uminzYa6qOjRlrqpKdWmuqlq2ba6qaexgqqrKLSSqqtpuKKqq6q8sqqr64CC+usxNZa7K3H5prsrsv22uyvzwYb7bDGVoustcpiy6y2znILrbfSgkvtteRmW+6253ab7rfrhtvuuObGi6686tLLrr3u4gvvvPzW2++9/+Yb8L7+FgywwQIjTPDBDCfc8MIORwzxxIJqWvETqxcLm/G0G4vb8bsfgyPyyNQEAgA7); -} -.ncboTree .doc-last { - background: 0 -1px no-repeat #fff url(data:image/gif;base64,R0lGODlhEgAWAOYAANvt/3V4o+Hw/+n1/4CAgOvr67e3t7a2ttHp/8nk/4ep3HSAsu32//v7++/v7/j7/8HBweTk5Njr/8Df/8Ph//39/fP5//7//5S/8pCjy4GVw1Wn7brd/2lwooqo2dvn98bGxn2Jtv7+/n+OvISbynJ8rvT09fn5+c7T//f39+Tx/8DA/5G46mdtnm13qM7n/296rHN+sJK872Vqmtjl9s3m/2t0pfX6/3qDsIeh0oyu3/z9/15hkI+z5fb6/9nh7ZOq0v///////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEIALAAAAAASABYAAAcpgEKCg4SFhoQEh4qLjEKJjZCNj5GUhpOVmI6aiZyZnp+goaKjpKWmg4EAOw==); -} -.ncboTree .doc a.active { - padding-left: 4px; - margin-left: -4px; -} -.ncboTree .ajax { - background: no-repeat 0 0 #ffffff url(data:image/gif;base64,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); - height: 16px; - display:none; -} -.ncboTree .ajax li { - display:none; - margin:0; - padding:0; -} -.ncboTree .trigger { - display:inline; - margin-left:-28px; - width: 28px; - height: 11px; - cursor:pointer; -} -.ncboTree .text { - cursor: default; -} -.ncboTree .active { - cursor: default; - background-color: #B9D5E4; - font-weight: bold; - padding-top: 1px; - padding-right: 4px; - padding-bottom: 1px; - padding-left: 0px; - line-height: 16px; -} -.ncboTree a, .ncboTree a:hover { - text-decoration: none; - color: black; - font-size: 11pt; -} -.ncboTree a:hover { - cursor: pointer; -} - -/* - * jQuery UI CSS Framework 1.8.7 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ - -/* Layout helpers -----------------------------------*/ -.ncboAutocomplete .ui-front { z-index: 100; } -.ncboAutocomplete .ui-helper-hidden { display: none; } -.ncboAutocomplete .ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } -.ncboAutocomplete .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ncboAutocomplete .ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ncboAutocomplete .ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ncboAutocomplete .ui-helper-clearfix { height:1%; } -.ncboAutocomplete .ui-helper-clearfix { display:block; } -/* end clearfix */ -.ncboAutocomplete .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ncboAutocomplete .ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ncboAutocomplete .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ncboAutocomplete .ui-widget-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; } - -.jsonSuggest a { - font-size: .8em; -} - -.jsonSuggest a:hover { - cursor: pointer; - font-size: .8em; -} - -/* - * jQuery UI CSS Framework 1.8.7 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/?ctl=themeroller - */ - - -/* Component containers -----------------------------------*/ -.ncboAutocomplete .ui-widget { font-family: Arial,sans-serif; font-size: 1em; } -.ncboAutocomplete .ui-widget .ui-widget { font-size: 1em; } -.ncboAutocomplete .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Arial,sans-serif; font-size: 1em; } -.ncboAutocomplete .ui-widget-content { border: 1px solid #B6B6B6; background: #ffffff; color: #4F4F4F; } -.ncboAutocomplete .ui-widget-content a { color: #4F4F4F; } -.ncboAutocomplete .ui-widget-header { border: 1px solid #B6B6B6; color: #4F4F4F; font-weight: bold; } -.ncboAutocomplete .ui-widget-header { - background: #ededed 0 0 repeat-x; /* Old browsers */ - background: -moz-linear-gradient(to bottom, #ededed 0%, #c4c4c4 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(100%,#c4c4c4)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* IE10+ */ - background: linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* W3C */ -} -.ncboAutocomplete .ui-widget-header a { color: #4F4F4F; } - -/* Interaction states -----------------------------------*/ -.ncboAutocomplete .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #B6B6B6; font-weight: normal; color: #4F4F4F; } -.ncboAutocomplete .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { - background: #ededed 0 0 repeat-x; /* Old browsers */ - background: -moz-linear-gradient(to bottom, #ededed 0%, #c4c4c4 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ededed), color-stop(100%,#c4c4c4)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* IE10+ */ - background: linear-gradient(to bottom, #ededed 0%,#c4c4c4 100%); /* W3C */ - -webkit-box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset; - -moz-box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset; - box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset; -} -.ncboAutocomplete .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #4F4F4F; text-decoration: none; } -.ncboAutocomplete .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #9D9D9D; font-weight: normal; color: #313131; } -.ncboAutocomplete .ui-state-hover a, .ui-state-hover a:hover { color: #313131; text-decoration: none; } -.ncboAutocomplete .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { - outline: none; - color: #1c4257; border: 1px solid #7096ab; - background: #ededed 0 -50px repeat-x; /* Old browsers */ - background: -moz-linear-gradient(to bottom, #b9e0f5 0%, #92bdd6 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#b9e0f5), color-stop(100%,#92bdd6)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(to bottom, #b9e0f5 0%,#92bdd6 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(to bottom, #b9e0f5 0%,#92bdd6 100%); /* Opera11.10+ */ - background: -ms-linear-gradient(to bottom, #b9e0f5 0%,#92bdd6 100%); /* IE10+ */ - background: linear-gradient(to bottom, #b9e0f5 0%,#92bdd6 100%); /* W3C */ - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; -} -.ncboAutocomplete .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #313131; text-decoration: none; } -.ncboAutocomplete .ui-widget :active { outline: none; } - -/* Icons -----------------------------------*/ - -/* Misc visuals -----------------------------------*/ - -/* - * jQuery UI Autocomplete 1.8.7 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Autocomplete#theming - */ -.ncboAutocomplete .ui-autocomplete { - position: absolute; cursor: default; z-index: 3; - -moz-border-radius: 0; - -webkit-border-radius: 0; - border-radius: 0; - -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.3); - -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.3); - box-shadow: 0 1px 5px rgba(0,0,0,0.3); -} - -/* workarounds */ -* html .ncboAutocomplete .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */ - -/* - * jQuery UI Menu 1.8.7 - * - * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Menu#theming - */ -.ncboAutocomplete .ui-menu { - list-style:none; - padding: 2px; - margin: 0; - display:block; - float: left; -} -.ncboAutocomplete .ui-menu .ui-menu { - margin-top: -3px; -} -.ncboAutocomplete .ui-menu .ui-menu-item { - margin:0; - padding: 0; - zoom: 1; - float: left; - clear: left; - width: 100%; -} -.ncboAutocomplete .ui-menu .ui-menu-item a { - text-decoration:none; - display:block; - padding:.2em .4em; - line-height:1.5; - zoom:1; -} -.ncboAutocomplete .ui-menu .ui-menu-item a.ui-state-focus, -.ncboAutocomplete .ui-menu .ui-menu-item a.ui-state-hover, -.ncboAutocomplete .ui-menu .ui-menu-item a.ui-state-active { - font-weight: normal; - margin: -1px; - background: #5f83b9; - color: #FFFFFF; - text-shadow: 0px 1px 1px #234386; - border-color: #466086; - -moz-border-radius: 0; - -webkit-border-radius: 0; - border-radius: 0; -} diff --git a/app/views/submissions/_form.html.haml b/app/views/submissions/_form.html.haml deleted file mode 100644 index 0b342c8800..0000000000 --- a/app/views/submissions/_form.html.haml +++ /dev/null @@ -1,276 +0,0 @@ -- unless @errors.nil? - %div.form-group.row - %div.col-sm-10.offset-sm-2.enable-lists{style: "color:red;"} - %strong Errors On Form - %ul - - for error in @errors - - if error.is_a? Array - %ul - - error[1].each do |key, message| - %li - = message - - else - %li - = error - -= hidden_field :submission, :ontology, value: @ontology.id - --# Description -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_description"} - Description - %span.asterik * - %div.col-sm-10 - = text_area(:submission, :description, rows: 5, value: @submission.description, required: true, - class: "form-control") - --# Format -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_hasOntologyLanguage"} - Format - %span.asterik * - %div.col-sm-10 - - ont_formats = ["OBO", "OWL", "UMLS", "SKOS"].sort - - selected = @submission.hasOntologyLanguage ? @submission.hasOntologyLanguage : "OWL" - -# TODO: Add/remove aria-describedby attribute for SKOS help text display - = select("submission", "hasOntologyLanguage", options_for_select(ont_formats, selected), {}, - {class: 'form-control'}) - %div.form-text#helpSkosFormat - SKOS vocabularies submitted to BioPortal must contain a minimum of one concept scheme and top concept | - assertion. Please refer to the NCBO wiki for a more | - detailed explanation | - with examples. | - -%div.row.mb-3 - %div.col-sm-10.offset-sm-2 - = tag.button('Show advanced OWL options', id: 'collapseOWLOptions', class: 'btn btn-outline-secondary', - type: 'button', 'data-bs-toggle': 'collapse', 'data-bs-target': '#owl-options', - 'aria-expanded': 'false', 'aria-controls': 'owl-options') - --# Optional property overrides for OWL ontologies -%div#owl-options.collapse - %div.row - %div.col-sm-10.offset-sm-2 - %p.lead Customize default property settings - - -# Preferred name - %div.row.mb-2 - %label{for: "submission_prefLabelProperty", class: 'col-sm-2 offset-sm-2 col-form-label-sm'} Preferred name - %div.col-sm-10.offset-sm-2 - = text_field(:submission, :prefLabelProperty, value: @submission.prefLabelProperty, - class: "form-control form-control-sm", aria: {describedBy: "preferredNameHelpBlock"}) - %div{id: 'preferredNameHelpBlock', class: 'form-text'} - Enter a property ID, or leave blank to use the default setting: - = link_to(nil, 'https://www.w3.org/2004/02/skos/core#prefLabel', target: '_blank') - - -# Synonym - %div.row.mb-2 - %label{for: "submission_synonymProperty", class: 'col-sm-2 offset-sm-2 col-form-label-sm'} Synonym - %div.col-sm-10.offset-sm-2 - = text_field(:submission, :synonymProperty, value: @submission.synonymProperty, - class: "form-control form-control-sm", aria: {describedBy: "synonymHelpBlock"}) - %div{id: 'synonymHelpBlock', class: 'form-text'} - Enter a property ID, or leave blank to use the default setting: - = link_to(nil, 'https://www.w3.org/2004/02/skos/core#altLabel', target: '_blank') - - -# Definition - %div.row.mb-2 - %label{for: "submission_definitionProperty", class: 'col-sm-2 offset-sm-2 col-form-label-sm'} Definition - %div.col-sm-10.offset-sm-2 - = text_field(:submission, :definitionProperty, value: @submission.definitionProperty, - class: "form-control form-control-sm", aria: {describedBy: "definitionHelpBlock"}) - %div{id: 'definitionHelpBlock', class: 'form-text'} - Enter a property ID, or leave blank to use the default setting: - = link_to(nil, 'https://www.w3.org/2004/02/skos/core#definition', target: '_blank') - - -# Author - %div.row.mb-3 - %label{for: "submission_authorProperty", class: 'col-sm-2 offset-sm-2 col-form-label-sm'} Author - %div.col-sm-10.offset-sm-2 - = text_field(:submission, :authorProperty, value: @submission.authorProperty, - class: "form-control form-control-sm", aria: {describedBy: "authorHelpBlock"}) - %div{id: 'authorHelpBlock', class: 'form-text'} - Enter a property ID, or leave blank to use the default setting: - = link_to(nil, 'https://purl.org/dc/elements/1.1/creator', target: '_blank') - - -# Obsolete classes - %div.row - %div.col-sm-10.offset-sm-2 - %p.lead Identify obsolete classes - - -# Obsolete property - %div.row.mb-2 - %label{for: "submission_obsoleteProperty", class: 'col-sm-2 offset-sm-2 col-form-label-sm'} Obsolete property - %div.col-sm-10.offset-sm-2 - = text_field(:submission, :obsoleteProperty, value: @submission.obsoleteProperty, - class: "form-control form-control-sm", aria: {describedBy: "obsoleteHelpBlock"}) - %div{id: 'obsoleteHelpBlock', class: 'form-text'} - Optionally enter a property ID that indicates obsolete status for ontology classes | - (the property value must be set to "true"). Note that by default, #{$SITE} checks for existence | - of the owl:deprecated property. | - - -# Obsolete branch root - %div.row.mb-3 - %label{for: "submission_obsoleteParent", class: 'col-sm-2 offset-sm-2 col-form-label-sm'} Obsolete branch root - %div.col-sm-10.offset-sm-2 - = text_field(:submission, :obsoleteParent, value: @submission.obsoleteParent, - class: "form-control form-control-sm", aria: {describedBy: "obsoleteRootHelpBlock"}) - %div{id: 'obsoleteRootHelpBlock', class: 'form-text'} - Optionally enter a class ID for the root of an obsolete branch. All classes in the branch will be marked as | - obsolete, with the exception of the root class. | - --# Version -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_version"} Version - %div.col-sm-10 - = text_field(:submission, :version, value: @submission.version, class: 'form-control') - --# Natural language -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label'} Language - %div.col-sm-10 - = natural_language_selector(@submission) - %div{id: 'languageHelpBlock', class: 'form-text'} - Enter the language of the content of the ontology, i.e., English, French, etc. - --# Status -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_status"} - Status - %span.asterik * - %div.col-sm-10 - - selected_status = @submission.status ? @submission.status : "alpha" - - status_options = ["alpha", "beta", "production", "retired"] - = select(:submission, :status, status_options, {selected: selected_status, required: true}, class: 'form-control') - --# Release date -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: 'datepicker'} - Release date - %span.asterik * - %div.col-sm-10 - %div.input-group - - release_date = @submission.released ? Date.parse(@submission.released) : Date.today - = text_field(:submission, :released, id: 'datepicker', value: "#{l(release_date, format: :month_day_year)}", - required: true, class: 'form-control', readonly: 'readonly') - %span.input-group-text - %i{class: 'fas fa-calendar-alt fa-lg', 'aria-hidden': 'true'} - --# Location -%div.fieldset{id: '#submissionLocation', class: 'row mb-3'} - %legend{class: 'col-form-label col-sm-2 pt-0'} - Location - %span.asterik * - %div.col-sm-10 - - if !@masterFileOptions - %div.form-check - - checked = @ontology.summaryOnly - = radio_button(:submission, :isRemote, 3, :onclick=>"$('.hidden_field').hide();", checked: checked, - aria: {describedBy: "metadataHelpBlock"}, class: "form-check-input") - %label.form-check-label{for: "submission_isRemote_3"} - Metadata only - %div{id: 'metadataHelpBlock', class: 'form-text'} - Allow users to view and search your ontology metadata, but not its classes and properties. - %div.form-check - - checked = !(@submission.pullLocation.nil? || @submission.pullLocation.empty?) - = radio_button(:submission, :isRemote, 1, :onclick=>"location_toggle('remote');", checked: checked, - aria: {describedBy: "loadFromURLHelpBlock"}, class: "form-check-input") - %label.form-check-label{for: "submission_isRemote_1"} - Load from URL - %div{id: 'loadFromURLHelpBlock', class: 'form-text'} - New versions loaded on a nightly basis - - display = (checked and "" or "display:none;") - %div{id: 'remote', class: 'hidden_field mt-2', style: display} - = text_field(:submission, :pullLocation, value: @submission.pullLocation, - aria: {describedBy: "enterURLHelpBlock"}, class: "form-control") - %div{id: 'enterURLHelpBlock', class: 'form-text'} - Enter a URL, including the name of your ontology source file, e.g., http://www.example.com/my_ontology.owl. - %div.form-check - - checked = (!@ontology.summaryOnly) && @submission.pullLocation.nil? - = radio_button(:submission, :isRemote, 0, :onclick=>"location_toggle('upload');", checked: checked, - class: "form-check-input") - %label.form-check-label{for: "submission_isRemote_0"} - Upload local file - - display = (checked and "" or "display:none;") - %div.hidden_field#upload{style: display} - = f.file_field(:filePath, class: "mt-2") - - else - -# TODO: Has this section of code actually been tested? - = radio_button :submission, :isRemote, 0, :onclick=>"location_toggle('upload');", checked: true - Upload Local File - %br/ - %span{:style => "font-size:11px;"} (choose a file on your local file system to upload) - - display = (checked and "" or "display:none;") - %div#upload{style: display} - = f.file_field :filePath, required: true - = f.select("masterFileName", @masterFileOptions, { include_blank: "Select primary file from zip contents", required: true}, {style: "border-color: red;"}) - --# Contact(s) -%div#contacts.row.mb-3 - %label{class: 'col-sm-2 col-form-label'} - Contact - %span.asterik * - - if @submission.contact && @submission.contact.size > 0 - - @submission.contact.each_with_index do |contact, i| - - if i == 0 - -# Contact div - %div.col-sm-10.d-flex.align-items-center.contact - %label Name - = text_field :submission, :"contact[#{i}][name]", value: contact["name"], class: "form-control flex-grow-1 mx-2" - %label Email - = text_field :submission, :"contact[#{i}][email]", value: contact["email"], class: "form-control flex-grow-1 mx-2" - %button.btn.btn-success.add-contact - %i{class: "fas fa-plus fa-lg", aria: {hidden: "true"}} - - else - -# Secondary contacts need to be offset by 2 columns, and have a delete button. - %div.col-sm-10.d-flex.align-items-center.offset-sm-2.contact - %label Name - = text_field :submission, :"contact[#{i}][name]", value: contact["name"], class: "form-control flex-grow-1 mx-2" - %label Email - = text_field :submission, :"contact[#{i}][email]", value: contact["email"], class: "form-control flex-grow-1 mx-2" - %button.btn.btn-success.add-contact - %i{class: "fas fa-plus fa-lg", aria: {hidden: "true"}} - %button.btn.btn-danger.ms-1.remove-contact - %i{class: "fas fa-minus fa-lg", aria: {hidden: "true"}} - - else - -# TODO - %div.col-sm-10.d-flex.align-items-center.contact - %label Name: - = text_field :submission, :"contact[0][name]", class: "form-control flex-grow-1 mx-2" - %label Email: - = text_field :submission, :"contact[0][email]", class: "form-control flex-grow-1 mx-2" - %button.btn.btn-success.add-contact - %i{class: "fas fa-plus fa-lg", aria: {hidden: "true"}} - --# Home page -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_homepage"} Homepage - %div.col-sm-10 - = text_field(:submission, :homepage, value: @submission.homepage, class: "form-control", - aria: {describedBy: "homepageHelpBlock"}) - %div{id: 'homepageHelpBlock', class: 'form-text'} Enter a URL for the main page of your ontology - --# Documentation page -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_documentation"} Documentation - %div.col-sm-10 - = text_field(:submission, :documentation, value: @submission.documentation, class: "form-control", - aria: {describedBy: "docsHelpBlock"}) - %div{id: 'docsHelpBlock', class: 'form-text'} Enter a URL for a page that provides ontology documentation - --# Publications page -%div.row.mb-3 - %label{class: 'col-sm-2 col-form-label', for: "submission_publication"} Publications - %div.col-sm-10 - = text_field(:submission, :publication, value: @submission.publication, class: "form-control", - aria: {describedBy: "pubsHelpBlock"}) - %div{id: 'pubsHelpBlock', class: 'form-text'} Enter a URL for a page that lists publications about your ontology - -%div.row.mb-3 - %div.col-sm-10.offset-sm-2 - %label.col-form-label.fst-italic * Fields marked with an asterisk are required. - -%div.row.mb-3 - %div.col-sm-10.offset-sm-2 - = submit_tag button_text, class: "btn btn-primary me-1" - = link_to "Cancel", ontology_path(@ontology.acronym), class: "btn btn-primary"