Mercurial > repos > yating-l > jbrowsearchivecreator
diff tracks/HTMLFeatures.py @ 6:237707a6b74d draft
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
author | yating-l |
---|---|
date | Thu, 15 Feb 2018 17:05:05 -0500 |
parents | |
children | 3f9971a91096 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tracks/HTMLFeatures.py Thu Feb 15 17:05:05 2018 -0500 @@ -0,0 +1,39 @@ +#!/usr/bin/env python +import json +import logging + +from TrackDb import TrackDb +from util import subtools +from util import santitizer + + +class HTMLFeatures(TrackDb): + def __init__(self, trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings=None): + super(HTMLFeatures, self).__init__(trackName, trackLabel, trackDataURL, trackType, dataType, extraSettings) + + def prepareExtraSetting(self): + """ set HTMLFeatures configuration options """ + extraConfigs = dict() + self.extraSettings["clientConfig"] = dict() + self.extraSettings["config"] = dict() + if 'type' in self.extraSettings: + extraConfigs["type"] = self.extraSettings['type'] + if 'color' in self.extraSettings and self.extraSettings['color']: + extraConfigs['feature_color'] = self.extraSettings['color'] + else: + extraConfigs['feature_color'] = "#000000" + #self.extraSettings['clientConfig']['color'] = self.extraSettings['color'] + if 'subfeatureClasses' in self.extraSettings: + subfeature_css_class = santitizer.sanitize_name(self.trackLabel + "_" + self.extraSettings['subfeatureClasses']) + extraConfigs['subfeatureClasses'] = {self.extraSettings['subfeatureClasses']: subfeature_css_class} + + if 'category' not in self.extraSettings or not self.extraSettings['category']: + self.extraSettings['config']['category'] = "Default group" + else: + self.extraSettings['config']['category'] = self.extraSettings['category'] + + extraConfigs['config'] = json.dumps(self.extraSettings["config"]) + extraConfigs['clientConfig'] = json.dumps(self.extraSettings["clientConfig"]) + return extraConfigs + + \ No newline at end of file