Example #1
0
 def __init__(self, context, request, prefix='batch', size=10):
     self.context = context
     self.request = request
     self.url = get_absolute_url(self.context, self.request)
     self.prefix = prefix
     self.size = size
     self.batch = None
Example #2
0
 def save_changes(self):
     data, errors = self.extractData()
     if errors:
         self.submissionError = errors
         return FAILURE
     self.context.__parent__.update(self.context, **data)
     action_url = str(get_absolute_url(self.context, self.request))
     raise exceptions.HTTPFound(location=action_url)
Example #3
0
 def create(self):
     data, errors = self.extractData()
     if errors:
         self.submissionError = errors
         return FAILURE
     item = self.context.add(**data)
     action_url = str(get_absolute_url(self.context, self.request))
     raise exceptions.HTTPFound(location=action_url)
Example #4
0
    def update(self):
        DisplayFieldWidget.update(self)
        content = self.form.getContentData().getContent()
        fileobj = self.component._field.get(content)

        if fileobj:
            if IFile.providedBy(fileobj):
                self.filename = fileobj.filename
                self.filesize = ISized(fileobj, None)

            self.url = get_absolute_url(content, self.request)
            self.download = "%s/++download++%s" % (
                self.url, self.component.identifier)
Example #5
0
def breadcrumbs(item, request, resolver=resolve_name):
    if resolver is None:
        resolver = resolve_name
    kin = lineage_chain(item)
    if kin:
        kin.reverse()
        root = kin.pop(0)
        base_url = get_absolute_url(root, request)
        name, title = resolver(root)
        yield {'name': title, 'url': base_url}

        for sibling in kin:
            name, title = resolver(sibling)
            base_url += '/' + parse.quote(name.encode('utf-8'), _safe)
            yield {'name': title, 'url': base_url}
Example #6
0
 def get_tabs(self, view=None):
     tabs = []
     base_url = get_absolute_url(self.context, self.request)
     if view is not None:
         current = (crom.name.get(view), view.__class__)
     for name, klass in sort_components(
             IView.all_components(self.context, self.request), key=sorter):
         tabs.append({
             'id': name,
             'title': title.get(klass) or name,
             'selected': current == (name, klass),
             'url': '%s/%s' % (base_url, name),
             })
     if len(tabs) == 1 and tabs[0]['selected']:
         return []
     return tabs
Example #7
0
    def update(self):
        SchemaFieldWidget.update(self)

        if not self.form.ignoreContent:
            content = self.form.getContentData().getContent()
            fileobj = self.component._field.get(content)

            if fileobj:
                self.allow_action = True
                if IFile.providedBy(fileobj):
                    self.filename = fileobj.filename
                    self.filesize = ISized(fileobj, None)
                else:
                    self.filename = _(u'download', default=u"Download")

                if ILocation.providedBy(content):
                    self.url = get_absolute_url(content, self.request)
                    self.download = "%s/++download++%s" % (
                        self.url, self.component.identifier)
Example #8
0
 def url(self):
     return get_absolute_url(self.context, self.request)     
Example #9
0
 def url(self, *args):
     if len(args) == 0:
         return get_absolute_url(self.context, self.request)
     else:
         return get_absolute_url((args)[0], self.request)