示例#1
0
文件: main.py 项目: Shvarpa/BibFast
def project_export_citations_each_style(ref,
                                        project_id,
                                        filename='export.txt'):
    """remove project from citation
    :param ref:Firebase
    :param citation_id:str
    :param project_id:str
    """
    dstyle = 'mla7'
    if not isinstance(filename, str):
        filename = 'export.txt'
    else:
        filename += '.txt' if filename[-4:] != '.txt' else ''
    project_id = str(project_id)
    if not ref.exists('projects', project_id):
        ref.eprint("project #{} does'nt exist".format(project_id))
        return
    data = ref.get('citations')
    data = filter_dict(data, 'projects', '{}:{}'.format(project_id, 'active'))
    citations = [Citation(data[item]) for item in data]
    formatted = []
    index = 0
    for cit in citations:
        formatted_cit = cit.export_easybib(
            input("enter citation #{} style: ".format(index)))
        formatted.append(formatted_cit)
        index = index + 1
    file = open(filename, 'w')
    for formatted_citation in formatted:
        json.dump(formatted_citation, file, ensure_ascii=False)
        file.write('\n')
    file.close()
    os.startfile(filename)
示例#2
0
文件: main.py 项目: Shvarpa/BibFast
def project_get_citations(ref,
                          project_id):  #####not in cli######################
    """remove project from citation
    :param ref:Firebase
    :param project_id:str
    """
    project_id = str(project_id)
    if not ref.exists('projects', project_id):
        ref.eprint("project #{} does'nt exist".format(project_id))
        return
    data = ref.get('citations')
    data = filter_dict(data, 'projects', '{}:{}'.format(project_id, 'active'))
    return data
示例#3
0
def delete_project(ref, project_id):
    """delete project from database by his project id
    :param ref:Firebase
    :param project_id:str
    """
    project_id = str(project_id)
    if not ref.exists("projects", project_id):
        ref.eprint("project #{} does'nt exist".format(project_id))
        return
    ref.db.child('projects/{}'.format(project_id)).remove(ref.token)
    citations = ref.get('citations')
    if isinstance(citations, dict):
        citations = filter_dict(citations, 'projects',
                                "{}:".format(project_id), False)
        ref.db.child("citations").set(citations, ref.token)
    ref.eprint('project #{} removed'.format(project_id))
示例#4
0
文件: main.py 项目: Shvarpa/BibFast
def delete_project(ref, project_id):
    """delete project from database by his project id
    :param ref:Firebase
    :param project_id:str
    """
    project_id = str(project_id)
    if not ref.exists("projects", project_id):
        ref.eprint("project #{} does'nt exist".format(project_id))
        return
    ref.db.child('projects/{}'.format(project_id)).remove(ref.token)
    citations = ref.get('citations')
    if isinstance(citations, dict):
        citations = filter_dict(citations, 'projects',
                                "{}:".format(project_id), False)
        ref.db.child("citations").set(citations, ref.token)
    ref.eprint('project #{} removed'.format(project_id))
    # update change
    update = "Project {} deleted".format(project_id)
    ti = datetime.datetime.now()
    t = str(ti.day) + '-' + str(ti.month) + '-' + str(ti.year) + ' ' + str(
        ti.hour) + ':' + str(ti.minute)
    change_update(ref, t, update)