コード例 #1
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_documents():
    """Read the tree's documents."""
    prefixes = [str(document.prefix) for document in tree]
    if utilities.json_response(request):
        data = {"prefixes": prefixes}
        return data
    else:
        return "<br>".join(prefixes)
コード例 #2
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_all_documents():
    """Read the tree's documents."""
    if utilities.json_response(request):
        data = {str(document.prefix): {str(item.uid): item.data for item in document} for document in tree}
        return data
    else:
        prefixes = [str(document.prefix) for document in tree]
        return "<br>".join(prefixes)
コード例 #3
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_item(prefix, uid):
    """Read a document's item."""
    document = tree.find_document(prefix)
    item = document.find_item(uid)
    if utilities.json_response(request):
        return {"data": item.data}
    else:
        return publisher.publish_lines(item, ext=".html")
コード例 #4
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_document(prefix):
    """Read a tree's document."""
    document = tree.find_document(prefix)
    if utilities.json_response(request):
        data = {str(item.uid): item.data for item in document}
        return data
    else:
        return publisher.publish_lines(document, ext=".html")
コード例 #5
0
ファイル: main.py プロジェクト: dornerworks/doorstop
def get_all_documents():
    """Read the tree's documents."""
    if utilities.json_response(request):
        data = {str(d.prefix): {str(i.uid): i.data for i in d} for d in tree}
        return data
    else:
        prefixes = [str(document.prefix) for document in tree]
        return template('document_list', prefixes=prefixes)
コード例 #6
0
ファイル: main.py プロジェクト: dornerworks/doorstop
def get_documents():
    """Read the tree's documents."""
    prefixes = [str(document.prefix) for document in tree]
    if utilities.json_response(request):
        data = {'prefixes': prefixes}
        return data
    else:
        return template('document_list', prefixes=prefixes)
コード例 #7
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_items(prefix):
    """Read a document's items."""
    document = tree.find_document(prefix)
    uids = [str(item.uid) for item in document]
    if utilities.json_response(request):
        data = {"uids": uids}
        return data
    else:
        return "<br>".join(uids)
コード例 #8
0
ファイル: main.py プロジェクト: dornerworks/doorstop
def get_items(prefix):
    """Read a document's items."""
    document = tree.find_document(prefix)
    uids = [str(item.uid) for item in document]
    if utilities.json_response(request):
        data = {'uids': uids}
        return data
    else:
        return template('item_list', prefix=prefix, items=uids)
コード例 #9
0
def get_attrs(prefix, uid):
    """Read an item's attributes."""
    document = tree.find_document(prefix)
    item = document.find_item(uid)
    attrs = sorted(item.data.keys())
    if utilities.json_response(request):
        data = {'attrs': attrs}
        return data
    else:
        return '<br>'.join(attrs)
コード例 #10
0
ファイル: main.py プロジェクト: pombredanne/doorstop
def post_numbers(prefix):
    """Create the next number in a document."""
    document = tree.find_document(prefix)
    number = max(document.next_number, numbers[prefix])
    numbers[prefix] = number + 1
    if utilities.json_response(request):
        data = {'next': number}
        return data
    else:
        return str(number)
コード例 #11
0
ファイル: main.py プロジェクト: tjasz/doorstop
def post_numbers(prefix):
    """Create the next number in a document."""
    document = tree.find_document(prefix)
    number = max(document.next_number, numbers[prefix])
    numbers[prefix] = number + 1
    if utilities.json_response(request):
        data = {"next": number}
        return data
    else:
        return str(number)
コード例 #12
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_attrs(prefix, uid):
    """Read an item's attributes."""
    document = tree.find_document(prefix)
    item = document.find_item(uid)
    attrs = sorted(item.data.keys())
    if utilities.json_response(request):
        data = {"attrs": attrs}
        return data
    else:
        return "<br>".join(attrs)
コード例 #13
0
def get_all_documents():
    """Read the tree's documents."""
    if utilities.json_response(request):
        data = {
            str(document.prefix):
            {str(item.uid): item.data
             for item in document}
            for document in tree
        }
        return data
    else:
        prefixes = [str(document.prefix) for document in tree]
        return '<br>'.join(prefixes)
コード例 #14
0
def get_attr(prefix, uid, name):
    """Read an item's attribute value."""
    document = tree.find_document(prefix)
    item = document.find_item(uid)
    value = item.data.get(name, None)
    if utilities.json_response(request):
        data = {'value': value}
        return data
    else:
        if isinstance(value, str):
            return value
        try:
            return '<br>'.join(str(e) for e in value)
        except TypeError:
            return str(value)
コード例 #15
0
ファイル: main.py プロジェクト: tjasz/doorstop
def get_attr(prefix, uid, name):
    """Read an item's attribute value."""
    document = tree.find_document(prefix)
    item = document.find_item(uid)
    value = item.data.get(name, None)
    if utilities.json_response(request):
        data = {"value": value}
        return data
    else:
        if isinstance(value, str):
            return value
        try:
            return "<br>".join(str(e) for e in value)
        except TypeError:
            return str(value)