Commit Graph
70 Commits
Author SHA1 Message Date
James Taylor 83f7de290e Clip long words when displaying info in history. 2007-10-05 17:13:50 +00:00
Greg Von Kuster 48e9652241 More functional test code cleanup and first round of additional functional tests. 2007-10-04 19:43:24 +00:00
Daniel Blankenberg cfaeb3f4d8 url_for() is now used for displaying datasets. 2007-10-04 18:51:26 +00:00
Greg Von Kuster 7f29b2b047 More functional test cleanup, renamed many functions to make it easier to undrstand what they do. 2007-10-03 20:50:16 +00:00
James Taylor 74d224ef71 All forms now use the tool form style. Cleaned up the edit attributes page.
Metadata elements can be created with "visible=False" in which case they are not display to the user on the edit attributes page.
2007-09-20 19:14:42 +00:00
Greg Von Kuster 97fda63c73 Eliminated NoProperDataError exception so tool form will be displayed even if no dataset in history can be used by the tool. 2007-09-05 14:04:39 +00:00
Greg Von Kuster 32c24741c1 Added new ColumnList tool parameter and added a new NoProperDataError exception since tools could now require input datasets of specific type sin order to render the tool form. 2007-09-04 20:14:56 +00:00
Greg Von Kuster 617dd51375 Made "refresh_on_change" work for form select fields. 2007-08-31 18:19:33 +00:00
Greg Von Kuster 051765d337 First pass at prettying up the edit form. 2007-08-24 13:56:51 +00:00
Nate Coraor 37c9ae6f9b Fixed bugs with child datasets and AJAX, reduced some javascript duplication. 2007-08-23 21:22:12 +00:00
Nate Coraor d043b24646 Switched AJAX History from prototype to jQuery and optimized. 2007-08-07 12:15:31 +00:00
Daniel Blankenberg 1aecfdba08 Add ability to have a directory of files associated with an individual dataset. Relative links in html work.
Put all desired files in the directory specified in a tool XML as $output.files_path.
Example:
<command interpreter="python">script.py $input $output $output.files_path</command>
becomes:
python ./tools/filters/script.py ./database/files/dataset_1.dat ./database/files/dataset_2.dat ./database/tmp/dataset_2_files
Any file put in ./database/tmp/dataset_2_files will be accessable to html files using a relative link.

Directories are moved to a more permanent location only if they contain files.
2007-08-06 19:54:00 +00:00
Nate Coraor 84ef4844d5 Forgot to incorporate Dan's child dataset changes in dataset_code.tmpl. 2007-08-06 19:12:23 +00:00
Nate Coraor f6e4514308 Asynchronous history updates. Start a job and don't click refresh.
Unfinished datasets update themselves every 3 seconds until they're done.
2007-08-06 19:03:53 +00:00
Ross Lazarus 70e728d1e3 Added datatypes sort so drop down list of datatypes is sane when editing a dataset 2007-08-04 17:47:59 +00:00
Daniel Blankenberg ca8cc1420e Add the ability for secondary (child) and new primary datasets to be collected automatically. Datasets can now be set to not be visible, which will prevent their display in a user's history.
To have a child dataset harvested automatically, simply name the file:
child_PARENTID_DESIGNATION_VISIBILITY_EXT (To make a new primary dataset, simply use the form: primary_ASSOCIATEDWITHDATASETID_DESIGNATION_VISIBILITY_EXT)
and place this file in the directory specified by $__new_file_path__

For example:
You define the command in the tool XML as:
<command interpreter="python2.4">some_command.py $input1 $out_file1 $out_file1.id $__new_file_path__</command>

Suppose the input dataset is 1 and the output dataset is 2, the commandline becomes:
python2.4 some_command.py ./database/files/dataset_1.dat ./database/files/dataset_2.dat 2 ./database/tmp

In addition to the primary file (a HTML file), this program creates files in the ./database/tmp directory named:
child_2_SomeImage_invisible_jpg
child_2_SomeText_visible_text

These files are discovered and added as children to the appropriate dataset. The text file will appear in the user's history, but the jpg will not.

All files can be viewed however, by making links in the primary (HTML) history item like:
<img src="display_child?parent_id=2&designation=SomeImage" alt="Some Image"/>
<a href="display_child?parent_id=2&designation=SomeText">Some Text</a>


Designations need to be unique for each originally declared output file, simply using a counter can work well.

These new files can be accessed in the exec_after_process hook under param_dict['__collected_datasets__'].

Note the update to the universe_wsgi.ini.sample file.

Some database changes are required:
ALTER TABLE dataset ADD visible boolean;
UPDATE dataset SET visible = true WHERE visible is NULL;
2007-08-03 16:37:44 +00:00
Daniel Blankenberg 489beb6717 Remove Delete objects ability from admin form. 2007-08-01 15:37:09 +00:00
James Taylor 9ca8fc1d7e Tool forms now display labels above the fields rather than beside. This is both substantially easier to use [1], and it allows us to have longer labels (and thus, not have to worry about the details of a particular type of display when writing tool configurations).
[1] http://www.uxmatters.com/MT/archives/000107.php)
2007-07-31 21:48:25 +00:00
Daniel Blankenberg 43d3a79b5e Add Datatype level converters, based on metadata.
Converters are manually accessed through the edit_data interface (same as metadata).

Converters to load are specified by datatype_converters_conf.xml, see
datatype_converters_conf.xml.sample.

Converters are defined in XML using the same format as tools, and use the same
internal components.

datatype_converters_conf.xml and the converter path can be changed in the
universe_wsgi.ini file.
2007-07-25 16:38:39 +00:00
Anton Nekrutenko e130de1a26 More interface changes and updates to tool_conf.xml.main and tool_conf.xml.sample 2007-07-17 15:17:11 +00:00
James Taylor 6849a58046 Account for border when toggling right panel (so that width is the same when restored) 2007-07-16 21:18:57 +00:00
Ian Schenck bb708af475 Metadata. Some of this is in early stages. There are definite needs to the interface, and there are some slight design issues here and there. Also, upload doesn't want to allow anything to remain Bed or Interval, probably because missing_meta is still there, and missing_meta should eventually go away altogether. Anyhow, I am unfortunately gone for the weekend. Please take note of any crashing the edit page gives you. 2007-07-13 21:09:03 +00:00
Anton Nekrutenko b4103b6649 Tool description cleanup. Next tool_conf. New logo 2007-07-13 18:36:44 +00:00
Anton Nekrutenko 0735559079 New logo and favicon 2007-07-12 18:56:57 +00:00
James Taylor 551df392ba Make new style work better with old layout and vice versa (so people with
customized styles can still use the new layout). Changed the config parameter
to enable the new layout to "use_new_layout" (since it has nothing to do with style!!!)

NEXT PERSON TO UPDATE TEST PLEASE ADD

[app:universe]
use_new_layout=true
2007-07-12 18:27:58 +00:00
James Taylor 0c067f843d Clean up javascript for the new layout. Using the latest (tweaked by me) version of jquery.ui (still in development, but better than interface2 which we were using). Reduced the number of different javascript files and made packed versions of everything. 2007-07-12 17:34:23 +00:00
Daniel Blankenberg 80474d6a60 A bunch of changes to datatypes, including a generic interface for adding display applications.
To add a display app, override the datatypes __init__ method, adding display apps in the form of
self.add_display_app ( app_id, label, file_function, links_function )

where

app_id is a unique id
label is the primary display label, ie display at 'UCSC'
file_function is a string containing the name of the function that returns a properly formated display
links_function is a string containing the name of the function that returns a list of (link_name,link)

See the Interval datatype for an example:
    def __init__(self, **kwd):
        """Initialize interval datatype, by adding UCSC display apps"""
        Tabular.__init__(self, **kwd)
        self.add_display_app ( 'ucsc', 'display at UCSC', 'as_ucsc_display_file', 'ucsc_links' )
2007-07-11 17:36:54 +00:00
Greg Von Kuster 6f1f194462 Better message display behavior in phastOdds_for_intervals tool.
Enhance history template to only display at supported site if dataset not empty.
Commented out wormbase and flybase builds until we get the correct data automatically.
2007-07-06 14:59:46 +00:00
James Taylor 9d4d2a74af Fix z-index for center content (better animations!) 2007-07-05 20:39:49 +00:00
James Taylor 15fd7f3880 Fix refresh after tool execution in Safari, and resetting width after a tool finishes and returns to Galaxy. 2007-07-05 20:08:31 +00:00
James Taylor 46eb320e93 Fixes for border "hover" effects. 2007-07-05 19:49:51 +00:00
James Taylor ae4ca56ea3 Missing file. 2007-07-05 18:45:04 +00:00
James Taylor 4a4c8d25dc New layouts and style.
They are somewhat independent (you can use the new layout with the old style
and vice versa) but they belong together.

Tested in Firefox, Safari, IE5.5, IE6, but there are still some features
to be implemented before this is ready for 'main'.

To use, first add "new_style_june_2007=true" to the app:universe section of
universe_wsgi.ini (this gives you the new layout). Second change document_root
to "%(here)s/static/june_2007_style/blue" in the app:static_style section.

Style Features: simplifications, fewer 'hatched' images, space savings in some
places, small changes to the color scheme (same general feel, but the colors
are better matched). Main changes are to history, the new style support nested
datasets much better.

Layout features: no framesets (just iframes, some of which can be replaced with divs and ajax down the road). Frames are resizable and hideable. Tools can provide width hints and history will automatically hide (try UCSC main to see this).
2007-07-05 18:39:36 +00:00
James Taylor f29aa679d2 (javascript) New jquery release, substantially faster, smoother animation (especially in Firefox). Also, some fixes to animation speed and for Safari. 2007-07-02 14:15:59 +00:00
James Taylor 8dc96d22f2 (javascript) Caching some elements in closures at load time to minimize the
time between clicking and the start of the animations.
2007-07-02 13:56:01 +00:00
James Taylor b34117a256 Fix (now less fragile). 2007-06-29 00:27:24 +00:00
James Taylor 3ba107decc All javascript used in the web interface is now based on jQuery. All pages now work well with javascript disabled. Javascript enhancements (expand/collapse regions, confirmations, ajax delete, rollovers) are then added "unobtrusively".
Also, the consolidation makes the total file size substantially smaller. In addition, there is a "scripts/packed" directory that contains highly compressed versions of the javascript files. This should be used for production deployment. The initial load size is reduced by ~80%, before considering gzip and caching.
2007-06-28 23:52:40 +00:00
Greg Von Kuster da7aa75ce3 Improved implementation for displaying Galaxy files at UCSC, GBrowse, and other future applications.
Fixed a bug in the unit test for new gff version 3 format in sniff.py.
Tweaked the biomart tool so that it will not display problm Info: text in history.
This commit includes some stuff for future GBrowse integration, but nothing included should pose any problems with the current environment.
2007-06-28 20:05:11 +00:00
James Taylor aa1b320baf Fixed up the "contexts" used to look up variables in parameter grouping
constructs. You can now reference and parameter value defined on a previous
page or in a higher level group. Should fix a problem Guru found.
2007-05-31 19:02:37 +00:00
James Taylor c8a6dd5eca Use "url_for" to generate urls in as many places as I could find. 2007-05-25 20:02:51 +00:00
Ian Schenck 7b5aa376e9 Fix for microbial data. get_html_param_map wasn't able to pass the context of the inputs into the page, which was crashing things. 2007-05-24 18:36:28 +00:00
James Taylor 7bfc238304 Many changes related to tool interfaces and jobs (DATABASE CHANGE, READ)
#) An "xy_plot" tool and a new "build_ucsc_custom_track" tool that
   demonstrate the various features added here.

#) Grouping constructs for tool parameters:
   - "repeat" element allows for a set of parameters to be repeated an
     arbitrary number of times
   - "conditional" element allows choosing a set of parameters to display
     based on the value of another parameter
   These constructs can be arbitrarily nested. Their values are structured
   and can be used in hooks, validation, et cetera

#) Support for generating arbitrary config files to pass to a tool

#) Command lines are now full Cheetah templates

#) Better job error reporting, includes tracebacks for internal errors
   preparing the job (database change required, see below!)

#) Preparation of command line, config files, exec_before_job hook moved
   into job execution stage

#) Parameter values now jsonified before storing in database (this is much
   more rigorous that before, and restoring from the database now works
   properly)

DATABASE CHANGE:

alter table job add column traceback text;
2007-05-19 16:40:55 +00:00
Ian Schenck a94811d6d0 Crude check on the edit form. Checks to make sure all of the column assignments are numbers (strand is allowed to be empty) greater than zero. 2007-05-16 18:12:41 +00:00
Daniel Blankenberg 41edf2c852 Can now delete abandoned histories via the admin interface. 2007-05-11 16:39:15 +00:00
Greg Von Kuster 5b345d0b4c Changed behavior of history import and added BioMart test instance. 2007-05-11 13:06:30 +00:00
Greg Von Kuster 401e30e2c5 Requires db schema change. Enhance upload tool to default to the last build used in the "current" history.
Database changes required:
alter table history add genome_build varchar(40);

There is now a new tool ToolParameter named GenomeBuildParameter which should be useful in several existing tools.

Also took care of some other miscellaneous items.
2007-04-19 20:53:16 +00:00
Guruprasad Anada 012e460482 Adding tool "Display customtracks at UCSC" under Graph/Display data tab. I've added new param attributes called repeat (to repeat the param a certain number of times) and condition (to display or not display the param) and have added dynamic_options for type "data" in order to facilitate multiple data selection. These changes required certain modifications in the framework (/lib/galaxy/tools/__init__.py and parameters.py , /lib/galaxy/datatypes/interval.py and in templates/tool_form.tmpl). I ran functional tests and found no errors in any of the tools due to these modifications. There were the usual assertion errors and database errors.
Modified get_flanks.py and get_flanks.xml files. Better exception handling and tool tips.

Also moved GMAJ and LAJ tools to Graph/Display data section.
2007-04-12 16:52:39 +00:00
Greg Von Kuster 18b25d241f Corrected behavior of upload tool under 2 conditions: 1) if user clicks execute button with no posted data or URL and 2) if user uploads an empty file. 2007-04-05 19:57:58 +00:00
Daniel Blankenberg 03130a65bb Enhance build name grouping. Species are sorted alphabetically by name, but within a species
are sorted in decending db revision order.
2007-03-22 19:56:16 +00:00
Daniel Blankenberg 59ad2219ac Add ability to purge deleted datasets. Purged datasets have their file
contents deleted from disk and is done using the admin interface.

Database changes required:

alter table dataset add purged boolean;
update dataset set purged = False where purged is null;
2007-03-22 16:33:35 +00:00