Beispiel #1
0
def episodes(id_show, id_episode):
    if id_show not in utils.AVAILABE_SHOWS:
        section_template = "./templates/404.tpl"
        return template("./pages/index.html",
                        version=utils.getVersion(),
                        sectionTemplate=section_template,
                        sectionData={})
    show = json.loads(utils.getJsonFromFile(id_show))
    episodes = show['_embedded']['episodes']
    try:
        parsed_id_episode = int(id_episode)
        for chapter in episodes:
            if chapter['id'] == parsed_id_episode:
                section_template = "./templates/episode.tpl"
                return template("./pages/index.html",
                                version=utils.getVersion(),
                                sectionTemplate=section_template,
                                sectionData=chapter)
    except ValueError:
        pass
    section_template = "./templates/404.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=section_template,
                    sectionData={})
Beispiel #2
0
def episode(id, episode_id):
    sectionData = utils.get_specific_episode_api(id, episode_id)
    if not sectionData:
        sectionTemplate = "./templates/404.tpl"
        return template("./pages/index.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,
                        sectionData={})
    else:
        sectionTemplate = "./templates/episode.tpl"
        return template("./pages/index.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,
                        sectionData=sectionData)
Beispiel #3
0
def show(id):
    sectionData = utils.get_specific_show_api(id)
    if not sectionData:
        sectionTemplate = "./templates/404.tpl"
        return template("./pages/index.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,
                        sectionData={})
    else:
        sectionTemplate = "./templates/show.tpl"
        return template("./pages/index.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,
                        sectionData=sectionData)
Beispiel #4
0
def show_id(show_id):
    sectionTemplate = "./templates/show.tpl"
    sectionData = utils.show_info(show_id)
    try:
        return template("./pages/index.html",
                        version=utils.getVersion(),
                        sectionTemplate=sectionTemplate,
                        query=sectionData)
    except:
        return template("./pages/index.html",
                        sectionTemplate="./templates/404.tpl",
                        version=utils.getVersion(),
                        sectionData={})
Beispiel #5
0
def episode_id(episode_id, show_id):
    sectionTemplate = "./templates/episode.tpl"
    sectionData = utils.get_episode_info(show_id, episode_id)
    try:
        return template("./pages/index.html",
                        version=utils.getVersion(),
                        sectionTemplate=sectionTemplate,
                        sectionData=sectionData)
    except:
        return template("./pages/index.html",
                        sectionTemplate="./templates/404.tpl",
                        version=utils.getVersion(),
                        sectionData={})
Beispiel #6
0
def browse():
    result = utils.data_of_shows(utils.api_shows_address, utils.AVAILABE_SHOWS)
    sectionTemplate = "./templates/browse.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=result)
Beispiel #7
0
def browse():
    sectionTemplate = "./templates/browse.tpl"
    sectionData = utils.getShows()
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=sectionData)
Beispiel #8
0
def search():
    searchQuery = request.forms.get('q')
    results = []

    shows = [
        json.loads(utils.getJsonFromFile(id)) for id in utils.AVAILABE_SHOWS
    ]
    for show in shows:
        for episode in show['_embedded']['episodes']:
            if episode['name'] is None:
                tmpName = ''
            else:
                tmpName = episode['name']

            if episode['summary'] is None:
                tmpSummary = ''
            else:
                tmpSummary = episode['summary']

            if searchQuery in tmpName or searchQuery in tmpSummary:
                res = {}
                res['showid'] = show['id']
                res['episodeid'] = episode['id']
                res['text'] = show['name'] + ":" + episode['name']
                results.append(res)

    sectionTemplate = "./templates/search_result.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    query=searchQuery,
                    results=results,
                    sectionData={})
Beispiel #9
0
def show(show_id):
    sectionTemplate = "./templates/show.tpl"
    show_current = json.loads(utils.getJsonFromFile(show_id))
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=show_current)
Beispiel #10
0
def browse():
    sectionTemplate = "./templates/browse.tpl"
    result = utils.getShows()
    return template(INDEX,
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=result)
Beispiel #11
0
def search():
    sectionTemplate = "./templates/search_result.tpl"
    search_input = request.forms.get('q')
    shows_list = [
        json.loads(utils.getJsonFromFile(elem))
        for elem in utils.AVAILABE_SHOWS
    ]
    search_output = []

    for shows in range(len(shows_list) - 1):
        for episodes in range(
                len(shows_list[shows]['_embedded']['episodes']) - 1):
            show_current = shows_list[shows]
            if search_input in str(show_current['name']) \
                    or search_input in str(show_current['_embedded']['episodes'][episodes]['name']) \
                    or search_input in str(show_current['_embedded']['episodes'][episodes]['summary']):
                search_match = {
                    "showid":
                    shows_list[shows]['id'],
                    "episodeid":
                    shows_list[shows]['_embedded']['episodes'][episodes]['id'],
                    "text":
                    (shows_list[shows]['name'] + ": " + shows_list[shows]
                     ['_embedded']['episodes'][episodes]['name'])
                }
                search_output.append(search_match)

    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=search_output,
                    query=search_input)
Beispiel #12
0
def get_show(id):
    sectionTemplate = "./templates/show.tpl"
    result = utils.getShow(id)
    return template(INDEX,
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=result)
Beispiel #13
0
def show(number):
    selected_show = json.loads(utils.getJsonFromFile(number))
    show_template = "./templates/show.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=show_template,
                    sectionData=selected_show)
Beispiel #14
0
def get_episode(show_id, episode_id):
    sectionTemplate = "./templates/episode.tpl"
    episode = utils.getEpisode(show_id, episode_id)
    return template(INDEX,
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=episode)
Beispiel #15
0
def routing(name):
    sectionTemplate = "./templates/show.tpl"
    sectionData = json.loads(utils.getJsonFromFile(name))
    return template(sectionTemplate,
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    result=sectionData)
Beispiel #16
0
def show(name):
    sectionTemplate = "./templates/show.tpl"
    sectionData = json.loads(utils.getJsonFromFile(name))
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=sectionData)
Beispiel #17
0
def episode(number, ep_number):
    show = json.loads(utils.getJsonFromFile(number))
    for episode in show["_embedded"]["episodes"]:
        if int(ep_number) == episode["id"]:
            return template("./templates/episode.tpl",
                            version=utils.getVersion(),
                            result=episode)
    return
Beispiel #18
0
def signin():
    if request.method == 'POST':
        return handleLogin(request)
    else:
        context = {'err_msg': ''}
        sectionTemplate = "./templates/login.tpl"
    return template("./pages/index.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,**context,
                    sectionData={})
Beispiel #19
0
def search():
    sectionTemplate = "./templates/seaerch_result.tpl"
    query = request.forms.get('q')
    return template("./pages/index.html",
                    version=getVersion(),
                    sectionData={},
                    sectionTemplate=sectionTemplate,
                    query=query,
                    results=search(query))
Beispiel #20
0
def display_show(showname):
    sectionTemplate = "./templates/show.tpl"
    sectionData = utils.displayShow(showname)
    if sectionData == 'error':
        return error(error)
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=sectionData)
Beispiel #21
0
def browse():
    shows = []
    for show in utils.AVAILABE_SHOWS:
        shows.append(json.loads(utils.getJsonFromFile(show)))
    browse_template = "./templates/browse.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=browse_template,
                    sectionData=shows)
Beispiel #22
0
def browse():
    with connection.cursor() as cursor:
        sql = "SELECT * FROM categories"
        cursor.execute(sql)
        result = cursor.fetchall()
    sectionTemplate = "./templates/store1.tpl"
    sectionData = result
    return template("./pages/logged.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,
                    sectionData=sectionData)
Beispiel #23
0
def display_episode(showname, episodenum):
    sectionTemplate = "./templates/episode.tpl"
    sectionData = utils.displayEp(showname, episodenum)
    if sectionData == 'error':
        return error(error)
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData={sectionData})
Beispiel #24
0
def show(number):
    with connection.cursor() as cursor:
        sql = "SELECT id_product,pr.product_name, pr.product_image, price, sup.supermarket_name, sup.supermarket_image, cat.id as category_id FROM prices  as p1 inner join supermarkets as sup on p1.id_supermarket = sup.id inner join products as pr on  p1.id_product = pr.id inner join categories as cat on pr.id_category = cat.id group by id_product,pr.product_name, pr.product_image, price, sup.supermarket_name, sup.supermarket_image having price <= (select min(p2.price) from prices as p2 where p2.id_product = p1.id_product group by p2.id_product) and category_id ={} order by price;".format(number)
        cursor.execute(sql)
        result = cursor.fetchall()
        print(result)
    sectionTemplate = "./templates/store2.tpl"
    return template("./pages/logged.html", version=utils.getVersion(), sectionTemplate=sectionTemplate,
                    sectionData=result)
def index():
    sectionTemplate = "./templates/browse.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=[
                        json.loads(utils.getJsonFromFile(movie))
                        for movie in utils.AVAILABLE_SHOWS
                    ])
Beispiel #26
0
def browse():
    sectionTemplate = "./templates/browse.tpl"
    sectionData = [
        json.loads(utils.getJsonFromFile(id)) for id in utils.AVAILABE_SHOWS
    ]
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData=sectionData)
Beispiel #27
0
def handleLogin(request):
    email = request.forms.get("email")
    password = request.forms.get("password")
    userVerified = verifyUser(email, password)
    if userVerified:
        redirect('/store')
    else:
        context = {"err_msg": "Wrong nickname or password"}
        return template("./pages/logged.html",version=utils.getVersion(), sectionTemplate="./templates/login.tpl", **context, sectionData={})
Beispiel #28
0
def episode(showId, episodeId):
    sectionData = json.loads(utils.getJsonFromFile(showId))
    for ep in sectionData['_embedded']['episodes']:
        if ep['id'] == int(episodeId):
            sectionData = ep
            break
    return template("./templates/episode.tpl",
                    version=utils.getVersion(),
                    result=sectionData)
Beispiel #29
0
def search_result():
    query = request.forms.get('q')
    sectionTemplate = "./templates/search_result.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    query=query,
                    results=utils.search(query),
                    sectionData={})
Beispiel #30
0
def search_shows():
    q = request.POST.get("q")
    search_results = utils.search_shows(q)
    sectionTemplate = "./templates/search_result.tpl"
    return template("./pages/index.html",
                    version=utils.getVersion(),
                    sectionTemplate=sectionTemplate,
                    sectionData={},
                    results=search_results,
                    query=q)
Beispiel #31
0
def logException_internal(exClass, exValue, stack):
	import linecache, time
	log = logging.getLogger('exception')
	counter = 0
	log.critical('Exception occured: %s' % time.strftime("%Y-%m-%d %H:%M:%S"))
	try:
		import utils
		log.critical('grid-control: %s' % utils.getVersion())
	except:
		log.critical('grid-control: Unknown version')
	log.critical('')
	while stack:
		counter += 1
		code = stack.tb_frame.f_code
		# Output relevant code fragment
		linecache.checkcache(code.co_filename)
		log.critical('Stack #%s [%s:%d] %s', counter, code.co_filename, stack.tb_lineno, code.co_name)
		fmtLine = lambda line: linecache.getline(code.co_filename, line).rstrip().replace('\t', '  ')
		log.critical('\t  | %s', fmtLine(stack.tb_lineno - 1))
		log.critical('\t=>| %s', fmtLine(stack.tb_lineno + 0))
		log.critical('\t  | %s', fmtLine(stack.tb_lineno + 1))
		log.critical('')
		# Output local and class variables
		def safeRepr(obj):
			try:
				value = repr(obj)
				if log.isEnabledFor(logging.INFO1) or (len(value) < 500):
					return value
				return value[:500] + " ... [length:%d]" % len(value)
			except:
				return 'unable to display!'
		def display(keys, varDict, varPrefix = ''):
			maxlen = max(map(len, tmp.keys()) + [0])
			for var in sorted(keys):
				value = safeRepr(varDict[var])
				if 'password' in var:
					value = '<redacted>'
				log.critical('\t\t%s%s = %s', varPrefix, var.ljust(maxlen), value)

		tmp = dict(stack.tb_frame.f_locals)
		log.critical('\tLocal variables:')
		display(filter(lambda v: v != 'self', tmp), tmp)
		try:
			log.critical('\tClass variables (%s):' % safeRepr(tmp['self']))
			display(tmp['self'].__dict__, tmp['self'].__dict__, 'self.')
		except:
			pass
		log.critical('')
		stack = stack.tb_next
	if exClass:
		exMessage = '%s: %s' % (exClass.__name__, str.join(' ', map(str, exValue.args)))
		log.critical(exMessage)
		del stack
		return exMessage + '\n'
Beispiel #32
0
id = os.path.abspath(timestamp)
libs = {}
frags = []
cf = ""
format ="fastq"
inserts = []
maxreadlen = 250
innie = True
readlibs = []
SFFLinkerType = "titanium"
contigs = dict()
lastLib = 0
libs = ""
for o, a in opts:
    if o in ("-V", "--version"):
       print "metAMOS Version %s"%(utils.getVersion())
       sys.exit()
    elif o in ("-W", "--workflow"):
       if a.lower() not in availableWorkflows.keys():
          print "Error: unknown wofkflow %s specified. Please choose one of %s."%(a.lower(), ",".join(availableWorkflows.keys()))
          sys.exit(1)
       wf = availableWorkflows[a.lower()]

       # process any requested contigs/libs
       for lib in wf.readlibs:
          nlib = readLib(lib.format, lib.f1.path, "" if lib.interleaved or not lib.mated else lib.f2.path, lib.innie, lib.linkerType, lib.mated, lib.interleaved)
          readlibs.append(nlib)
          inserts.append([lib.mmin, lib.mmax])
       for contig in wf.asmcontigs:
          contigs[os.path.basename(contig)] = contig
       selectedWorkflow = wf.name
Beispiel #33
0
def printConfiguration(fileName=None):
    configurationText = []
    configurationText.append("metAMOS configuration summary:\n")
    configurationText.append("metAMOS Version:\t%s\n"%(utils.getVersion()))
    configurationText.append("Time and Date:\t\t%s\n"%(str(datetime.date.today())))
    configurationText.append("Working directory:\t%s\n"%(utils.Settings.rundir))
    configurationText.append("Prefix:\t\t\t%s\n"%(utils.Settings.PREFIX))
    configurationText.append("K-Mer:\t\t\t%s\n"%(utils.Settings.kmer))
    configurationText.append("Threads:\t\t%d\n"%(utils.Settings.threads)) 
    configurationText.append("Taxonomic level:\t%s\n"%(utils.Settings.taxa_level))
    configurationText.append("Verbose:\t\t%s\n"%(utils.Settings.VERBOSE))
    configurationText.append("Steps to skip:\t\t%s\n"%(", ".join(skipsteps)))
    configurationText.append("Steps to force:\t\t%s\n"%(", ".join(forcesteps)))

    # get metamos citations
    configurationText.append("\n")
    configurationText.append("[citation]\n")
    (progName, citation) = utils.getProgramCitations(settings, "metamos")
    configurationText.append(progName + "\n")
    configurationText.append("\t" + citation + "\n\n")
    if isolate_genome == True:
       (progName, citation) = utils.getProgramCitations(settings, "metamos_isolate")
       configurationText.append(progName + "\n")
       configurationText.append("\t" + citation + "\n\n") 

    configurationText.append("\n")
    configurationText.append("Step-specific configuration:\n")
    for type in selected_programs.keys():
        progs = set(selected_programs[type].split(","))
        configurationText.append("[" + type + "]\n")
        for prog in progs:
           # special case for validation, orf is a reference to selected orf finder, n50 is nothing
           if type == "validate" and prog == "n50":
              continue
           if type == "validate" and prog == "orf":
              prog = selected_programs["findorfs"]
           if type == "preprocess" and prog == "none":
              configurationText.append(prog.upper() + "\n\tN/A\n\n")
              continue
           if type == "preprocess" and prog == "metamos":
              configurationText.append("metAMOS built-in filtering\n\tN/A\n\n") 
              continue

           if prog == None or prog == "none":
              configurationText.append("None\n\n")
           else:
              (progName, citation) = utils.getProgramCitations(settings, prog)
              if progName == "":
                 configurationText.append(prog + "\n")
              else:
                 configurationText.append(progName + "\n")
              try:
                 configurationText.append("\t" + eval("utils.Settings.%s"%(prog.replace("-", "_").upper()))+"\n")
              except AttributeError:
                 try:
                    configurationText.append("\t" + generic.getLocation(utils.STEP_NAMES.mapping[type.upper()], prog) + "\n")
                 except KeyError:
                     configurationText.append("UNKNOWN")
              if citation != "":
                 configurationText.append("\t" + citation + "\n\n")

    # add step-indepent citations that are always run
    configurationText.append("[other]\n")
    for prog in always_run_programs:
       if prog == None or prog == "none":
          configurationText.append("None\n\n")
       else:
          (progName, citation) = utils.getProgramCitations(settings, prog)
          configurationText.append(progName + "\n")
          try:
             configurationText.append("\t" + eval("utils.Settings.%s"%(prog.upper()))+"\n")
          except AttributeError:
             configurationText.append("\tUNKNOWN\n")
          configurationText.append("\t" + citation + "\n\n")

    if fileName == "" or fileName == None:
        print ''.join(configurationText)
    else:
        conf = open(fileName, 'w')
        conf.write(''.join(configurationText))
        conf.close()