• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python chrome.add_script_data函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: _add_groups_data

    def _add_groups_data(self, req, allow_manual=False):
        perms = sorted(PermissionSystem(self.env).get_all_permissions())
        autocomplete = AutoCompleteGroup(self.env)

        all_groups = set(Group.groupsBy(self.env))
        # TODO: we should remove the autocomplete plugin, at least
        # once userfield can handle "cc style" fields (e.g., multiple
        # users selected) and then I think userfieldplugin should take over ownership
        # of the "shown_groups" settings
        shown_groups = autocomplete.get_autocomplete_values('shown_groups')

        groups = {}
        for group_name in shown_groups:
            group = Group(self.env, group_name)
            groups[group_name] = { 'label': group.label }
            if not group.external_group:
                groups[group_name]['members'] = []
                for subject, permission in perms:
                    if permission == group_name and subject not in all_groups:
                        subject_data = {'id': subject}
                        session = DetachedSession(self.env, subject)
                        if 'name' in session:
                            subject_data['name'] = session['name']
                        groups[group_name]['members'].append(subject_data)

        add_script_data(req, {'userGroups': groups })
开发者ID:CGI-define-and-primeportal,项目名称:trac-plugin-userfield,代码行数:26,代码来源:filter.py


示例2: add_template_data

    def add_template_data(self, req, data, tickets):
        if isinstance(self.env, ProductEnvironment):
            super(ProductBatchModifyModule, self).add_template_data(req, data,
                                                                    tickets)
            return

        data['batch_modify'] = True
        data['query_href'] = req.session['query_href'] or req.href.query()

        tickets_by_product = {}
        for t in tickets:
            tickets_by_product.setdefault(t['product'], []).append(t)

        data['action_controls'] = []
        global_env = ProductEnvironment.lookup_global_env(self.env)
        cache = {}
        for k, v in tickets_by_product.iteritems():
            batch_module = cache.get(k or '')
            if batch_module is None:
                env = ProductEnvironment(global_env, k) if k else global_env
                cache[k] = batch_module = ProductBatchModifyModule(env)
            data['action_controls'] += batch_module._get_action_controls(req,
                                                                         v)
        batch_list_modes = [
            {'name': _("add"), 'value': "+"},
            {'name': _("remove"), 'value': "-"},
            {'name': _("add / remove"), 'value': "+-"},
            {'name': _("set to"), 'value': "="},
        ]
        add_script_data(req, batch_list_modes=batch_list_modes,
                        batch_list_properties=self._get_list_fields())
开发者ID:thimalk,项目名称:bloodhound,代码行数:31,代码来源:batch.py


示例3: _make_graph

 def _make_graph(self, req, repos, info):
     # Generate graph data
     graph = {}
     threads, vertices, columns = \
         make_log_graph(repos, (item['rev'] for item in info))
     graph.update(threads=threads, vertices=vertices, columns=columns,
                  colors=self.graph_colors,
                  line_width=0.04, dot_radius=0.1)
     add_script(req, 'revisiongraph/js/excanvas.js')
     add_script(req, 'revisiongraph/js/log_graph.js')
     add_script_data(req, {'graph': graph})
     
     script = Markup("//<![CDATA[") + """
     jQuery(document).ready(function($) {
       $('th.trac-graph, td.trac-graph').show();
       var canvas = $('""" + Markup("<canvas>") + """').css({width: '%dem',
                                       height: '%dem'})
                                 .appendTo('td.trac-graph')[0];
       canvas.width = $(canvas).width();
       canvas.height = $(canvas).height();
       if (typeof(G_vmlCanvasManager) != 'undefined')
         canvas = G_vmlCanvasManager.initElement(canvas);
       $.paintLogGraph(graph, canvas);
     });
     """ % (graph['columns'] * 2, len(info) * 2) + Markup("//]]>")
     
     th = tag.th('Graph', class_='trac-graph')
     td = tag.td(class_='trac-graph', rowspan='%d' % len(info))
     
     script_filter = Transformer('//head').append(tag.script(script, type="text/javascript"))
     table_filter = Transformer('//table[@class="listing chglist"]').attr('class', 'listing chglist trac-graph')
     th_filter = Transformer('//table/thead/tr/th[@class="diff"]').before(th)
     td_filter = Transformer('//table/tbody/tr[1]/td[@class="diff"]').before(td)
     
     return [script_filter, table_filter, th_filter, td_filter]
开发者ID:arielnetworks,项目名称:trac-revision-graph-plugin,代码行数:35,代码来源:web_ui.py


示例4: filter_stream

    def filter_stream(self, req, method, filename, stream, data):
        selector = ['.user-field']
        page_map = {
            "ticket.html": ["#field-owner", "#field-reporter"],
            "query.html": ["#mods-filters input[name$='_" + field + "']"
                            for field in ("owner", "reporter")],
            "admin_components.html": ["input[name='owner']"],
            "taskboard.html": ["input[class='user-field']"]
        }

        page_map["hours_timeline.html"] = page_map["query.html"]

        def _template_filenames():
            for plugin in self.extra_templates:
                for filename in plugin.get_templates():
                    yield filename

        if filename in page_map:
            if filename == "ticket.html":
                selector.extend('#field-' + n for n in self._user_fields())
            if self.transform_owner_reporter:
                selector.extend(page_map[filename])

        if filename in page_map or filename in _template_filenames():
            self._add_groups_data(req)
            add_script_data(req, {'userfieldSelector': ','.join(selector) })
            add_script(req, 'userfield/js/userfield.js')

        return stream
开发者ID:CGI-define-and-primeportal,项目名称:trac-plugin-userfield,代码行数:29,代码来源:filter.py


示例5: post_process_request

    def post_process_request(self, req, template, data, content_type):
        """Do any post-processing the request might need; typically adding
        values to the template `data` dictionary, or changing template or
        mime type.
        
        `data` may be update in place.

        Always returns a tuple of (template, data, content_type), even if
        unchanged.

        Note that `template`, `data`, `content_type` will be `None` if:
         - called when processing an error page
         - the default request handler did not return any result

        (Since 0.11)
        """
        if template == 'ticket.html':
            add_stylesheet(req, '%s/css/autocomplete.css' % self.prefix)
            add_script(req, '%s/js/autocomplete.js' % self.prefix)
            if req.path_info.rstrip() == '/newticket':
                add_script_data(req, {'KEYWORDS_AC_PATH': 'ac-keywords'})
            else:
                add_script_data(req, {'KEYWORDS_AC_PATH': '../ac-keywords'})
            add_script(req, '%s/js/autocomplete_ticket_keywords.js' % self.prefix)
        return (template, data, content_type)
开发者ID:trac-hacks,项目名称:trac-autocompletekeywords,代码行数:25,代码来源:extendticketpage.py


示例6: post_process_request

 def post_process_request(self, req, template, data, content_type):
     add_script(req, 'wikicomments/wikicomments.js')
     add_script_data(req,  {
         '_wikicomments_author': req.authname,
         '_wikicomments_base': "%s/chrome/wikicomments" % req.base_path 
     })
     return template, data, content_type        
开发者ID:jarnik,项目名称:trac-wikicomments,代码行数:7,代码来源:wikicomments.py


示例7: post_process_request

    def post_process_request(self, req, template, data, content_type):
        if data is None:
            return

        js_data = {
            'comments_rest_url': req.href(CommentsREST.href),
            'formatting_help_url': req.href.wiki('WikiFormatting'),
            'delete_url': req.href(DeleteCommentForm.href),
            'preview_url': req.href(WikiPreview.href),
            'templates': self.templates_js_data(),
            'active_comment_id': req.args.get('codecomment'),
            'username': req.authname,
            'is_admin': 'TRAC_ADMIN' in req.perm,
        }

        original_return_value = template, data, content_type
        if req.path_info.startswith('/changeset/'):
            js_data.update(self.changeset_js_data(req, data))
        elif req.path_info.startswith('/browser'):
            js_data.update(self.browser_js_data(req, data))
        elif re.match(r'/attachment/ticket/\d+/.*', req.path_info):
            js_data.update(self.attachment_js_data(req, data))
        else:
            return original_return_value

        add_script(req, 'code-comments/json2.js')
        add_script(req, 'code-comments/underscore-min.js')
        add_script(req, 'code-comments/backbone-min.js')
        # jQuery UI includes: UI Core, Interactions, Button & Dialog Widgets, Core Effects, custom theme
        add_script(req, 'code-comments/jquery-ui/jquery-ui.js')
        add_stylesheet(req, 'code-comments/jquery-ui/trac-theme.css')
        add_script(req, 'code-comments/jquery.ba-throttle-debounce.min.js')
        add_script(req, 'code-comments/code-comments.js')
        add_script_data(req, {'CodeComments': js_data})
        return original_return_value
开发者ID:highcat,项目名称:trac-code-comments-plugin,代码行数:35,代码来源:web.py


示例8: render_admin_panel

    def render_admin_panel(self, req, cat, page, path_info):
        req.perm.assert_permission('TRAC_ADMIN')
        if req.method == 'POST':
            self._parse_request(req)

        action, status = self._conf_to_inner_format(self.config)
        operations = self.operations
        permissions = self._get_permissions(req)
        add_stylesheet(req, 'tracworkflowadmin/themes/base/jquery-ui.css')
        add_stylesheet(req, 'tracworkflowadmin/css/tracworkflowadmin.css')
        add_stylesheet(req, 'tracworkflowadmin/css/jquery.multiselect.css')
        add_script(req, 'tracworkflowadmin/scripts/jquery-ui.js')
        add_script(req, 'tracworkflowadmin/scripts/jquery.json-2.2.js')
        add_script(req, 'tracworkflowadmin/scripts/jquery.multiselect.js')
        add_script(req, 'tracworkflowadmin/scripts/main.js')
        add_script_data(req, {'auto_update_interval': int(self.auto_update_interval)})
        if req.locale and str(req.locale) in self.msgjs_locales:
            add_script(req, 'tracworkflowadmin/scripts/messages/%s.js' % req.locale)
        data = {
            'actions': action,
            'status': status,
            'perms': permissions,
            'operations': operations,
            'editor_mode': req.args.get('editor_mode') or self.default_editor,
            'text': self._conf_to_str(self.config)
        }
        return 'tracworkflowadmin.html', data
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:27,代码来源:web_ui.py


示例9: post_process_request

    def post_process_request(self, req, template, data, content_type):
        mine = ["/newticket", "/ticket", "/simpleticket"]
        if self.use_milestone:
            mine.append("/milestone")
            mine.append("/admin/ticket/milestones")

        match = False
        for target in mine + self.match_req:
            if req.path_info.startswith(target):
                match = True
                break

        if match:
            format = {"dmy": "dd%smm%syy", "mdy": "mm%sdd%syy", "ymd": "yy%smm%sdd"}.get(
                self.date_format, "dd%smm%syy"
            ) % (self.date_sep, self.date_sep)
            add_script_data(
                req,
                {
                    "datefield": {
                        "calendar": req.href.chrome("common", "ics.png"),
                        "format": format,
                        "first_day": self.first_day,
                        "show_week": self.show_week,
                        "show_panel": self.show_panel,
                        "num_months": self.num_months,
                        "change_month": self.change_month,
                        "change_year": self.change_year,
                    }
                },
            )
            add_script(req, "datefield/js/jquery-ui-1.8.16.custom.min.js")
            add_script(req, "datefield/js/datefield.js")
            add_stylesheet(req, "datefield/css/jquery-ui-1.8.16.custom.css")
        return template, data, content_type
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:35,代码来源:filter.py


示例10: process_request

    def process_request(self, req):
        req.perm.assert_permission('TICKET_VIEW')
        req.send_header('X-UA-Compatible', 'IE=edge')

        if req.path_info == '/ticketcalendar-ticket':
            return self._process_ticket_detail(req)

        self._add_header_contents(req)

        calendar = TicketCalendar(self.env, req)
        query = calendar.get_query(calendar.get_constraints())
        data = calendar.template_data(req, query)
        data['query_form_filters'] = self._render_query_form_filters(req, data)
        properties = dict((name, dict((key, field[key])
                                      for key in ('type', 'label', 'options',
                                                  'optgroups')
                                      if key in field))
                          for name, field in data['fields'].iteritems())
        add_script_data(req, {'properties': properties,
                              'modes': self._get_modes(data)})
        redirect = 'update' in req.args

        if req.path_info == '/ticketcalendar-box':
            month = _parse_month_arg(req.args.get('_month'), req.tz)
            if redirect:
                req.redirect(calendar.get_box_href(query, month))
            return self._process_box(req, query, data, month)

        if req.path_info == '/ticketcalendar-list':
            start, period = _parse_duration_arg(req.args.getfirst('_duration'),
                                                req.tz)
            if redirect:
                req.redirect(calendar.get_list_href(query, start, period))
            return self._process_list(req, query, data, start, period)
开发者ID:KKBOX,项目名称:trac-ticket-calendar-plugin,代码行数:34,代码来源:web_ui.py


示例11: filter_stream

 def filter_stream(self, req, method, filename, stream, data):
     if filename in [
                     'ticket.html',  # /ticket/{\d} or /newticket
                     ]:
         add_script(req, "contextchrome/js/ticketvalidatordecolator.js")
         status = 'ticket' in data and data['ticket'].values['status'] or 'sentinel'
         add_script_data(req, {"contextchrome_tracstatus": status})
     return stream
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:8,代码来源:ticketvalidator.py


示例12: filter_stream

    def filter_stream(self, req, method, filename, stream, data):
        self.log.debug("ckintegration: template %s" % (filename))
        # Act only when enabled, and editor_source defined, and current template has wiki-textareas
        if self.editor_source and self._check_editor_type(filename):
            # Some javascript global variable to add to the response to assist to tracwiki plugin

            add_script_data(
                req,
                {
                    "ck_editor_type": self.editor_type,
                    "ck_code_styles": self.get_styles_list(),
                    "trac_base_url": req.href.base,
                    "ck_tracwiki_path": req.href.chrome("ckintegration"),
                    "ck_resource_realm": "wiki",
                    "ck_resource_id": "",
                    "form_token": req.form_token,
                },
            )
            # Load the needed scripts (CKEditor itself, and the tracwiki plugin
            add_script(req, self.editor_source)
            add_script(req, "ckintegration/tracwiki.js")
            add_script(req, "ckintegration/pastecode.js")
            # Inject a script that adds the tracwiki plugin as an external plugin to CKEditor
            # @todo: Perform init with a dedicated loader script
            # @todo: Use the init to modify the CKEditor toolbar
            ck_plugin_init = '<script type="text/javascript">CKEDITOR.plugins.addExternal("tracwiki", ck_tracwiki_path, "tracwiki.js");\n'
            ck_plugin_init += 'CKEDITOR.plugins.addExternal("pastecode", ck_tracwiki_path, "pastecode.js");</script>'
            stream |= Transformer(".//body").prepend(HTML(ck_plugin_init))
            # add_script(req, 'ckintegration/ckloader.js')
            # Replace all relevant textarea fields in the template with CKEditor instances
            for field_name in self.template_fields[lower(filename)]:
                self.log.debug('Replacing textarea "%s" with CKEditor instance' % (field_name))
                add_editor = """<script type="text/javascript">
                    CKEDITOR.replace("%s", { extraPlugins : "tracwiki,pastecode" });
                </script>""" % (
                    field_name
                )
                # self.log.debug ("add_editor is %s" % add_editor)
                stream |= Transformer('.//textarea[@name="%s"]' % (field_name)).after(HTML(add_editor))
            # Also replace custom textarea fields in the ticket template that have wiki format
            if "ticket.html" == lower(filename) and "fields" in data:
                for f in data["fields"]:
                    if (
                        f["skip"]
                        or not lower(f["type"]) == "textarea"
                        or not f.has_key("format")
                        or not "wiki" == lower(f["format"])
                    ):
                        continue
                    field_name = "field_%s" % f["name"]
                    self.log.debug('Replacing textarea "%s" with CKEditor instance' % (field_name))
                    add_editor = """<script type="text/javascript">
                        CKEDITOR.replace("%s", { extraPlugins : "tracwiki,pastecode" });
                    </script>""" % (
                        field_name
                    )
                    stream |= Transformer('.//textarea[@name="%s"]' % (field_name)).after(HTML(add_editor))
        return stream
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:58,代码来源:__init__.py


示例13: post_process_request

    def post_process_request(self, req, template, data, content_type):
        """
        Add global javascript data on post-processing phase
        """
        # When processing template, add global javascript json into scripts
        if template:
            add_script_data(req, {'multiproject': self._get_published_data(req)})

        return template, data, content_type
开发者ID:alvabai,项目名称:trac-multiproject,代码行数:9,代码来源:resource.py


示例14: post_process_request

    def post_process_request(self, req, template, data, content_type):
        if not req or not template or not isinstance(data, dict):
            return template, data, content_type

        model = None
        resource = None
        attachments = None

        if template in ('wiki_view.html', 'wiki_edit.html'):
            model = data.get('page')
        elif template == 'ticket.html':
            model = data.get('ticket')
        elif template in ('milestone_view.html', 'milestone_edit.html'):
            model = data.get('milestone')
        elif template == 'attachment.html':
            attachments = data.get('attachments')
            if attachments:
                resource = attachments['parent']

        if not resource and model and model.exists:
            resource = model.resource
        if not resource:
            return template, data, content_type
        if not attachments:
            attachments = data.get('attachments')
        if not attachments and model and resource:
            context = web_context(req, resource)
            attachments = AttachmentModule(self.env).attachment_data(context)
            data['attachments'] = attachments

        if template in ('wiki_edit.html', 'milestone_edit.html'):
            self._add_overlayview(req)
        add_stylesheet(req, 'tracdragdrop/tracdragdrop.css')
        if hasattr(req, 'locale'):
            locale = str(req.locale)
            if locale in self.messages_files:
                add_script(req, 'tracdragdrop/messages/%s.js' % locale)
        add_script(req, 'common/js/folding.js')
        add_script(req, 'tracdragdrop/tracdragdrop.js')
        script_data = {
            '_tracdragdrop': {
                'base_url': req.href().rstrip('/') + '/',
                'new_url': req.href('tracdragdrop', 'new', resource.realm,
                                    resource.id),
                'can_create': attachments.get('can_create') or False,
                'max_size': AttachmentModule(self.env).max_size,
            },
            'form_token': req.form_token,
        }
        if add_script_data:
            add_script_data(req, script_data)
        else:
            setattr(req, '_tracdragdrop_data', script_data)

        return template, data, content_type
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:55,代码来源:web_ui.py


示例15: post_process_request

 def post_process_request(self, req, template, data, content_type):
     # remove script (jquery aggiornato caricato via fanstatic)
     del_script(req, 'common/js/jquery.js')
     # fanstatic
     dashboard.need()
     add_script(req, 'por/por.js')
     field_descriptions = dict([(field['name'], field['descriptions']) \
         for field in TicketSystem(self.env).get_custom_fields() \
             if field.get('descriptions')])
     add_script_data(req, {'fielddescriptions': field_descriptions})
     return template, data, content_type
开发者ID:getpenelope,项目名称:trac.por,代码行数:11,代码来源:plugins.py


示例16: post_process_request

 def post_process_request(self, req, template, data, content_type):
     if template in ('timeline.html', 'wiki_view.html', 'ticket.html',
                     'milestone_view.html', 'attachment.html'):
         add_stylesheet(req, 'common/css/code.css')
         add_stylesheet(req, 'overlayview/base.css')
         add_script(req, 'common/js/folding.js')
         add_script(req, 'overlayview/jquery.colorbox.js')
         add_script(req, 'overlayview/base.js')
         script_data = {}
         script_data['baseurl'] = req.href().rstrip('/') + '/'
         add_script_data(req, {'overlayview': script_data})
     return template, data, content_type
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:12,代码来源:web_ui.py


示例17: post_process_request

 def post_process_request(self, req, template, data, content_type):
     if data and (not self.has_pretty_dateinfo or data.get('dateinfo')):
         add_script(req, 'tractimedeltaupdator/main.js')
         if self.has_pretty_dateinfo:
             dateinfo = req.session.get(
                 'dateinfo', Chrome(self.env).default_dateinfo_format)
             script_data = self._get_script_data(req, data, dateinfo)
             self._set_dateinfo_funcs(req, data, dateinfo)
         else:
             script_data = self._get_script_data(req, data, 'relative')
         add_script_data(req, {'tractimedeltaupdator': script_data})
     return template, data, content_type
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:12,代码来源:web_ui.py


示例18: post_process_request

    def post_process_request(self, req, template, data, content_type):
        if req.path_info.startswith('/browser'):
            # see if the user has seen the tortoise svn dialog before
            # we use this data in the javascript to tell if we should 
            # show a dialog which asks the user if they have TSVN installed
            if 'tortoise_svn_message' in req.session:
                add_script_data(req, {'tortoise_svn_message': True})
            else:
                add_script_data(req, {'tortoise_svn_message': False})
                add_script(req, 'contextmenu/js/tortoise-svn-message.js')

        return template, data, content_type
开发者ID:CGI-define-and-primeportal,项目名称:trac-plugin-contextmenu,代码行数:12,代码来源:contextmenu.py


示例19: add_template_data

 def add_template_data(self, req, data, tickets):
     data['batch_modify'] = True
     data['query_href'] = req.session['query_href'] or req.href.query()
     data['action_controls'] = self._get_action_controls(req, tickets)
     batch_list_modes = [
         {'name': _("add"), 'value': "+"},
         {'name': _("remove"), 'value': "-"},
         {'name': _("add / remove"), 'value': "+-"},
         {'name': _("set to"), 'value': "="},
     ]
     add_script_data(req, batch_list_modes=batch_list_modes,
                     batch_list_properties=self._get_list_fields())
开发者ID:pkdevbox,项目名称:trac,代码行数:12,代码来源:batch.py


示例20: post_process_request

 def post_process_request(self, req, template, data, content_type):
     if (req.path_info.startswith('/wiki') or
         req.path_info.startswith('/ticket') or
         req.path_info.startswith('/newticket')):
         if req.method == 'GET' or req.method == 'POST':
             self.env.log.info('Injecting wikiautocomplete javascript')
             add_script_data(req, {
                 'wikiautocomplete_url': req.href('wikiautocomplete'),
                 })
             add_script(req, 'wikiautocomplete/js/jquery.textcomplete.min.js')
             add_script(req, 'wikiautocomplete/js/wikiautocomplete.js')
             add_stylesheet(req, 'wikiautocomplete/css/jquery.textcomplete.css')
     return (template, data, content_type)
开发者ID:kzhamaji,项目名称:WikiAutoCompletePlugin,代码行数:13,代码来源:web_ui.py



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python chrome.add_stylesheet函数代码示例发布时间:2022-05-27
下一篇:
Python chrome.add_script函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap