当前位置: 首页>>代码示例>>Python>>正文


Python things.wrap_links函数代码示例

本文整理汇总了Python中r2.lib.pages.things.wrap_links函数的典型用法代码示例。如果您正苦于以下问题:Python wrap_links函数的具体用法?Python wrap_links怎么用?Python wrap_links使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了wrap_links函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: get_wrapped_link

    def get_wrapped_link(self, url, link=None, wrapper=None):
        try:
            links = []
            if link:
                links = [link]
            else:
                sr = None if isinstance(c.site, FakeSubreddit) else c.site
                try:
                    links = Link._by_url(url, sr)
                except NotFound:
                    pass

            if links:
                kw = {}
                if wrapper:
                    links = wrap_links(links, wrapper=wrapper)
                else:
                    links = wrap_links(links)
                links = list(links)
                links = max(links, key=lambda x: x._score) if links else None
            if not links and wrapper:
                return wrapper(None)
            return links
            # note: even if _by_url successed or a link was passed in,
            # it is possible link_listing.things is empty if the
            # link(s) is/are members of a private reddit
            # return the link with the highest score (if more than 1)
        except:
            # we don't want to return 500s in other people's pages.
            import traceback

            g.log.debug("FULLPATH: get_link error in buttons code")
            g.log.debug(traceback.format_exc())
            if wrapper:
                return wrapper(None)
开发者ID:nickdevereaux,项目名称:reddit,代码行数:35,代码来源:buttons.py

示例2: GET_depmod

    def GET_depmod(self):
        displayPane = PaneStack()

        active_trials = {}
        finished_trials = {}

        juries = Jury.by_account(c.user)

        trials = trial_info([j._thing2 for j in juries])

        for j in juries:
            defendant = j._thing2

            if trials.get(defendant._fullname, False):
                active_trials[defendant._fullname] = j._name
            else:
                finished_trials[defendant._fullname] = j._name

        if active_trials:
            fullnames = sorted(active_trials.keys(), reverse=True)

            def my_wrap(thing):
                w = Wrapped(thing)
                w.hide_score = True
                w.likes = None
                w.trial_mode = True
                w.render_class = LinkOnTrial
                w.juryvote = active_trials[thing._fullname]
                return w

            listing = wrap_links(fullnames, wrapper=my_wrap)
            displayPane.append(
                InfoBar(strings.active_trials, extra_class="mellow"))
            displayPane.append(listing)

        if finished_trials:
            fullnames = sorted(finished_trials.keys(), reverse=True)
            listing = wrap_links(fullnames)
            displayPane.append(
                InfoBar(strings.finished_trials, extra_class="mellow"))
            displayPane.append(listing)

        displayPane.append(
            InfoBar(
                strings.more_info_link % dict(link="/help/deputies"),
                extra_class="mellow"))

        return Reddit(content=displayPane).render()
开发者ID:szimpatikus,项目名称:szimpatikus.hu,代码行数:48,代码来源:front.py

示例3: GET_edit_promo

 def GET_edit_promo(self, link):
     if not link or link.promoted is None:
         return self.abort404()
     rendered = wrap_links(link, wrapper=promote.sponsor_wrapper, skip=False)
     form = PromoteLinkForm(link, rendered)
     page = PromotePage('new_promo', content=form)
     return page.render()
开发者ID:AD42,项目名称:reddit,代码行数:7,代码来源:promotecontroller.py

示例4: GET_submit

    def GET_submit(self, url, title, then):
        """Submit form."""
        if url and not request.get.get('resubmit'):
            # check to see if the url has already been submitted
            links = link_from_url(url)
            if links and len(links) == 1:
                return self.redirect(links[0].already_submitted_link)
            elif links:
                infotext = (strings.multiple_submitted
                            % links[0].resubmit_link())
                res = BoringPage(_("seen it"),
                                 content = wrap_links(links),
                                 infotext = infotext).render()
                return res

        captcha = Captcha() if c.user.needs_captcha() else None
        sr_names = (Subreddit.submit_sr_names(c.user) or
                    Subreddit.submit_sr_names(None))

        return FormPage(_("submit"),
                        show_sidebar = True,
                        content=NewLink(url=url or '',
                                        title=title or '',
                                        subreddits = sr_names,
                                        captcha=captcha,
                                        then = then)).render()
开发者ID:JediWatchman,项目名称:reddit,代码行数:26,代码来源:front.py

示例5: GET_submit

    def GET_submit(self, url, title, then):
        """Submit form."""
        resubmit = request.get.get('resubmit')
        if url and not resubmit:
            # check to see if the url has already been submitted
            links = link_from_url(url)
            if links and len(links) == 1:
                return self.redirect(links[0].already_submitted_link)
            elif links:
                infotext = (strings.multiple_submitted
                            % links[0].resubmit_link())
                res = BoringPage(_("seen it"),
                                 content = wrap_links(links),
                                 infotext = infotext).render()
                return res

        if not c.user_is_loggedin:
            raise UserRequiredException

        if not (c.default_sr or c.site.can_submit(c.user)):
            abort(403, "forbidden")

        captcha = Captcha() if c.user.needs_captcha() else None
        sr_names = (Subreddit.submit_sr_names(c.user) or
                    Subreddit.submit_sr_names(None))

        return FormPage(_("submit"),
                        show_sidebar = True,
                        page_classes=['submit-page'],
                        content=NewLink(url=url or '',
                                        title=title or '',
                                        subreddits = sr_names,
                                        captcha=captcha,
                                        resubmit=resubmit,
                                        then = then)).render()
开发者ID:Falmarri,项目名称:reddit,代码行数:35,代码来源:front.py

示例6: query

    def query(self):
        if isinstance(c.site, DefaultSR):
            if c.user_is_loggedin:
                srlimit = Subreddit.DEFAULT_LIMIT
                over18 = c.user.has_subscribed and c.over18
            else:
                srlimit = g.num_default_reddits
                over18 = False

            sr_ids = Subreddit.user_subreddits(c.user,
                                               limit=srlimit,
                                               over18=over18)
            return normalized_hot(sr_ids)

        elif isinstance(c.site, MultiReddit):
            return normalized_hot(c.site.kept_sr_ids, obey_age_limit=False)
        else:
            if c.site.sticky_fullname:
                link_list = [c.site.sticky_fullname]
                wrapped = wrap_links(link_list,
                                     wrapper=self.builder_wrapper,
                                     keep_fn=self.keep_fn(),
                                     skip=True)
                # add all other items and decrement count if sticky is visible
                if wrapped.things:
                    link_list += [l for l in c.site.get_links('hot', 'all')
                                    if l != c.site.sticky_fullname]
                    if not self.after:
                        self.count -= 1
                        self.num += 1
                    return link_list
            
            # no sticky or sticky hidden
            return c.site.get_links('hot', 'all')
开发者ID:aburan28,项目名称:reddit,代码行数:34,代码来源:listingcontroller.py

示例7: GET_edit_promo

 def GET_edit_promo(self, link):
     if not link or link.promoted is None:
         return self.abort404()
     rendered = wrap_links(link, skip=False)
     form = PromoteLinkEdit(link, rendered)
     page = PromotePage(title=_("edit sponsored link"), content=form, show_sidebar=False, extension_handling=False)
     return page.render()
开发者ID:DorianGray,项目名称:reddit,代码行数:7,代码来源:promotecontroller.py

示例8: GET_comments

    def GET_comments(self, link):
        if not link:
            self.abort404()
        if not link.subreddit_slow.can_view(c.user):
            abort(403, 'forbidden')

        links = list(wrap_links(link))
        if not links:
            # they aren't allowed to see this link
            return self.abort(403, 'forbidden')
        link = links[0]

        wrapper = make_wrapper(render_class = StarkComment,
                               target = "_top")
        b = TopCommentBuilder(link, CommentSortMenu.operator('confidence'),
                              wrap = wrapper)

        listing = NestedListing(b, num = 10, # TODO: add config var
                                parent_name = link._fullname)

        raw_bar = strings.comments_panel_text % dict(
            fd_link=link.permalink)

        md_bar = safemarkdown(raw_bar, target="_top")

        res = RedditMin(content=CommentsPanel(link=link,
                                              listing=listing.listing(),
                                              expanded=auto_expand_panel(link),
                                              infobar=md_bar))

        return res.render()
开发者ID:AD42,项目名称:reddit,代码行数:31,代码来源:toolbar.py

示例9: GET_toolbar

    def GET_toolbar(self, link, url):
        """The visible toolbar, with voting buttons and all"""
        if url:
            url = demangle_url(url)

        if link:
            wrapped = wrap_links(link, wrapper=FrameToolbar, num=1)
        elif url:
            listing = hot_links_by_url_listing(url, sr=c.site, num=1, skip=True)
            if listing.things:
                wrapped = listing.things[0]
            else:
                wrapped = None
        else:
            return self.abort404()

        res = None
        if wrapped:
            res = wrapped
        elif url:
            res = FrameToolbar(link=None, title=None, url=url, expanded=False)

        if res:
            return spaceCompress(res.render())
        else:
            return self.abort404()
开发者ID:ChooseGoose,项目名称:reddit,代码行数:26,代码来源:toolbar.py

示例10: rendered_link

def rendered_link(links, media, compress):
    with c.user.safe_set_attr:
        c.user.pref_compress = compress
        c.user.pref_media    = media
    links = wrap_links(links, show_nums = True, num = 1)
    delattr(c.user, 'pref_compress')
    delattr(c.user, 'pref_media') 
    return links.render(style = "html")
开发者ID:BenHalberstam,项目名称:reddit,代码行数:8,代码来源:cssfilter.py

示例11: GET_current_promos

 def GET_current_promos(self):
     render_list = list(wrap_links(get_promoted()))
     for x in render_list:
         if x.promote_until:
             x.promote_expires = timetext(datetime.now(g.tz) - x.promote_until)
     page = PromotePage('current_promos',
                        content = PromotedLinks(render_list))
 
     return page.render()
开发者ID:rajbot,项目名称:tikical,代码行数:9,代码来源:promotecontroller.py

示例12: rendered_link

def rendered_link(links, media, compress, stickied=False):
    with c.user.safe_set_attr:
        c.user.pref_compress = compress
        c.user.pref_media    = media
    links = wrap_links(links, show_nums = True, num = 1)
    for wrapped in links:
        wrapped.stickied = stickied
    delattr(c.user, 'pref_compress')
    delattr(c.user, 'pref_media') 
    return links.render(style = "html")
开发者ID:AlbertoPeon,项目名称:reddit,代码行数:10,代码来源:cssfilter.py

示例13: GET_edit_promo

    def GET_edit_promo(self, link):
        if not link or link.promoted is None:
            return self.abort404()
        rendered = wrap_links(link, wrapper=promote.sponsor_wrapper, skip=False)

        form = PromoteLinkForm(link=link, listing=rendered, timedeltatext="")

        page = PromotePage("new_promo", content=form)

        return page.render()
开发者ID:numo16,项目名称:reddit,代码行数:10,代码来源:promotecontroller.py

示例14: GET_toolbar

    def GET_toolbar(self, link, url):
        """The visible toolbar, with voting buttons and all"""
        if url:
            url = demangle_url(url)

        if link:
            wrapped = wrap_links(link, wrapper=FrameToolbar, num=1)
        else:
            return self.abort404()

        return spaceCompress(wrapped.render())
开发者ID:Acceto,项目名称:reddit,代码行数:11,代码来源:toolbar.py

示例15: GET_edit_promo

    def GET_edit_promo(self, link):
        if link.promoted is None:
            return self.abort404()
        rendered = wrap_links(link)
        timedeltatext = ''
        if link.promote_until:
            timedeltatext = timetext(link.promote_until - datetime.now(g.tz),
                                     resultion=2)

        form = PromoteLinkForm(link = link,
                               listing = rendered,
                               timedeltatext = timedeltatext)
        page = PromotePage('new_promo', content = form)

        return page.render()
开发者ID:kevinrose,项目名称:diggit,代码行数:15,代码来源:promotecontroller.py


注:本文中的r2.lib.pages.things.wrap_links函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。