Example #1
0
def pbsearch_sql(c,option,q):
    if ':' in q:   # tag
        (tags,q) = q.split(':')
        tag_list = [t[1:] for t in tags.split(' ') if t.startswith('#')]
    else:
        tag_list = []

    order_by = " order by "+util.sort_option[util.sql_orderby(c)]
    query = query_build(q,tag_list,option,order_by);

    output = []
    for r in c.execute(query):
        tags = ' '.join(map(lambda x: '#'+x, (r["tags"].strip().split(' ')))) if r['tags'] else ""
        launch_count = ' +'+str(r["launch_count"]) if r["launch_count"] else ''
        icon = "icon-%d.png"%((r['mark']<<1)+r['private'])
        output.append({"title": title_build(r['description']),
                       "subtitle": r['host']+" "+tags+launch_count, # "uid": r['hash'],
                       "arg": r['href'],
                       "quicklookurl": r['href'],
                       "mods": {"cmd": {"subtitle": "[Copy] %s"%r['href']}},
                       "icon":{ "path": icon}
        })

    add_head_bottom(c,q,output,tag_list,option)

    print json.dumps({"items": output})
Example #2
0
def pbsearch_sql(c, option, q):
    if ':' in q:  # tag
        (tags, q) = q.split(':')
        tag_list = [t[1:] for t in tags.split(' ') if t.startswith('#')]
    else:
        tag_list = []

    order_by = " order by " + util.sort_option[util.sql_orderby(c)]
    query = query_build(q, tag_list, option, order_by)

    output = []
    for r in c.execute(query):
        tags = ' '.join(
            map(lambda x: '#' + x,
                (r["tags"].strip().split(' ')))) if r['tags'] else ""
        launch_count = ' +' + str(
            r["launch_count"]) if r["launch_count"] else ''
        icon = "icon-%d.png" % ((r['mark'] << 1) + r['private'])
        output.append({
            "title": title_build(r['description']),
            "subtitle":
            r['host'] + " " + tags + launch_count,  # "uid": r['hash'],
            "arg": r['href'],
            "quicklookurl": r['href'],
            "mods": {
                "cmd": {
                    "subtitle": "[Copy] %s" % r['href']
                }
            },
            "icon": {
                "path": icon
            }
        })

    add_head_bottom(c, q, output, tag_list, option)

    print json.dumps({"items": output})
Example #3
0
def process_option(c,q):
    result = []
    help_back_string = "enter to go Back"
    help_select_string = ""
    mods = {
        "ctrl": {"valid": False, "subtitle": ""},
        "alt": {"valid": False, "subtitle": ""},
        "cmd": {"valid": False, "subtitle": ""},
        "shift": {"valid": False, "subtitle": ""}
    }
    mark = util.filter_mark(c)
    private = util.filter_private(c)
    sort = util.sql_orderby(c)

    if q.startswith("_mark"):
        result.append({"title": "mark [filter] - "+util.filter_option[mark],
                       "subtitle": help_back_string,
                       "valid": False,
                       "autocomplete":"_",
                       "mods": mods
        })
        add_option_submenu(result,mods,"mark",mark)
    elif q.startswith("_private"):
        result.append({"title": "private [filter] - "+util.filter_option[private],
                       "subtitle": help_back_string,
                       "valid": False,
                       "autocomplete":"_",
                       "mods": mods
        })
        add_option_submenu(result,mods,"private",private)
    elif q.startswith("_sort"):
        result.append({"title": "sort - "+util.sort_option[sort],
                       "subtitle": help_back_string,
                       "valid": False,
                       "autocomplete":"_",
                       "mods": mods
        })
        add_option_submenu(result,mods,"sort",sort)
    elif q.startswith("_pbauth"):
        result.append({"title": "_pbauth username:token",
                       "subtitle": "Setup Pinboard authentication token",
                       "valid": False,
                       "mods": mods
        })
        if ' ' in q and ':' in q:
            result[0]['valid'] = True
            result[0]['arg'] = '_auth='+q.split(' ')[1]
            result[0]['subtitle'] = "Enter to set"
    else:
        result.append({"title": "Settings",
                       "subtitle": "enter to go Back",
                       "valid": False,
                       "autocomplete": "",
                       "mods": mods
                       })
                       
        result.append({"title": "mark [filter] - "+util.filter_option[mark],
                       "subtitle": help_select_string,
                       "valid": False,
                       "autocomplete":"_mark",
                       "mods": mods
        })
        result.append({"title": "private [filter] - "+util.filter_option[private],
                       "subtitle": help_select_string,
                       "valid": False,
                       "autocomplete":"_private",
                       "mods": mods
        })
        result.append({"title": "sort - "+util.sort_option[sort],
                       "subtitle": help_select_string,
                       "valid": False,
                       "autocomplete":"_sort",
                       "mods": mods
        })
        auth = util.authinfo(c)
        if auth:
            result.append({"title": "> Pinboard User - %s"%auth.split(':')[0],
                           "subtitle": 'enter to change',
                           "valid": False,
                           "autocomplete":"_pbauth ",
                           "mods": mods
            })
            result.append({"title": ">> Download pinboard data",
                           "subtitle": 'enter to reload pinboard',
                           "valid": True,
                           "arg": "_pbreload",
                           "autocomplete":"_pbreload ",
                           "mods": mods
            })
        else:
            result.append({"title": ">> Login Pinboard account",
                           "subtitle": 'pbauth - username:token',
                           "valid": False,
                           "autocomplete":"_pbauth ",
                           "mods": mods
            })
            
    print json.dumps({"items": result})
Example #4
0
def process_option(c, q):
    result = []
    help_back_string = "enter to go Back"
    help_select_string = ""
    mods = {
        "ctrl": {
            "valid": False,
            "subtitle": ""
        },
        "alt": {
            "valid": False,
            "subtitle": ""
        },
        "cmd": {
            "valid": False,
            "subtitle": ""
        },
        "shift": {
            "valid": False,
            "subtitle": ""
        }
    }
    mark = util.filter_mark(c)
    private = util.filter_private(c)
    sort = util.sql_orderby(c)

    if q.startswith("_mark"):
        result.append({
            "title": "mark [filter] - " + util.filter_option[mark],
            "subtitle": help_back_string,
            "valid": False,
            "autocomplete": "_",
            "mods": mods
        })
        add_option_submenu(result, mods, "mark", mark)
    elif q.startswith("_private"):
        result.append({
            "title":
            "private [filter] - " + util.filter_option[private],
            "subtitle":
            help_back_string,
            "valid":
            False,
            "autocomplete":
            "_",
            "mods":
            mods
        })
        add_option_submenu(result, mods, "private", private)
    elif q.startswith("_sort"):
        result.append({
            "title": "sort - " + util.sort_option[sort],
            "subtitle": help_back_string,
            "valid": False,
            "autocomplete": "_",
            "mods": mods
        })
        add_option_submenu(result, mods, "sort", sort)
    elif q.startswith("_pbauth"):
        result.append({
            "title": "_pbauth username:token",
            "subtitle": "Setup Pinboard authentication token",
            "valid": False,
            "mods": mods
        })
        if ' ' in q and ':' in q:
            result[0]['valid'] = True
            result[0]['arg'] = '_auth=' + q.split(' ')[1]
            result[0]['subtitle'] = "Enter to set"
    else:
        result.append({
            "title": "Settings",
            "subtitle": "enter to go Back",
            "valid": False,
            "autocomplete": "",
            "mods": mods
        })

        result.append({
            "title": "mark [filter] - " + util.filter_option[mark],
            "subtitle": help_select_string,
            "valid": False,
            "autocomplete": "_mark",
            "mods": mods
        })
        result.append({
            "title":
            "private [filter] - " + util.filter_option[private],
            "subtitle":
            help_select_string,
            "valid":
            False,
            "autocomplete":
            "_private",
            "mods":
            mods
        })
        result.append({
            "title": "sort - " + util.sort_option[sort],
            "subtitle": help_select_string,
            "valid": False,
            "autocomplete": "_sort",
            "mods": mods
        })
        auth = util.authinfo(c)
        if auth:
            result.append({
                "title": "> Pinboard User - %s" % auth.split(':')[0],
                "subtitle": 'enter to change',
                "valid": False,
                "autocomplete": "_pbauth ",
                "mods": mods
            })
            result.append({
                "title": ">> Download pinboard data",
                "subtitle": 'enter to reload pinboard',
                "valid": True,
                "arg": "_pbreload",
                "autocomplete": "_pbreload ",
                "mods": mods
            })
        else:
            result.append({
                "title": ">> Login Pinboard account",
                "subtitle": 'pbauth - username:token',
                "valid": False,
                "autocomplete": "_pbauth ",
                "mods": mods
            })

    print json.dumps({"items": result})