def upload_log():
    """

    """

    error = None

    if flask.request.method == "POST":
        file_uploaded = flask.request.files["filepath"]

        if file_uploaded.content_type == "text/plain":
            formated_date = format2date(flask.request.form["date_day"],
                                        flask.request.form["date_month"])

            convert_log(flask.request.form["title"],
                        formated_date, file_uploaded,
                        join(dirname(__file__), "logs/logstore.json"),
                        server_loaded = True
                        )

            cache.set("data",
                      OrderedDict(sorted(load_log(join(dirname(__file__),
                                                       "logs/logstore.json")
                                                 ).items(),
                                         key = lambda t: t[0])))

            return flask.redirect(flask.url_for("index"))

        else:
            error = "File uploaded is not accepted. It has to be a .log or" \
                    " plain text file"

    return flask.render_template('upload_log.html', error = error)
def index():
    """ 
    renders index.html, passing the loaded json data as logs variable.
    
    """
    
    if not cache.get("data"):
        cache.set("data",
                  OrderedDict(sorted(load_log(join(dirname(__file__),
                                                   "logs/logstore.json")
                                             ).items(), key = lambda t: t[0])))

    return flask.render_template('index.html', logs = cache.get("data"))