示例#1
0
文件: models.py 项目: pv/scipyshare
 def new_for_snippet(cls, entry, created_by, change_comment, description,
                     license, fileset):
     revno = cls._get_next_entry_revno(entry)
     old_fileset = None
     if fileset.is_temporary:
         old_fileset = fileset
         fileset = FileSet.new_from_slug_and_revision(entry.slug, revno)
         fileset.snippet = old_fileset.snippet
     revision = cls(entry=entry, revno=revno,
                    created_by=created_by, change_comment=change_comment,
                    description=description, license=license)
     if old_fileset is not None:
         fileset.save()
     revision.fileset = fileset
     return revision
示例#2
0
文件: models.py 项目: pv/scipyshare
 def new_for_package(cls, entry, created_by, change_comment, description,
                     license, author, url, fileset):
     revno = cls._get_next_entry_revno(entry)
     old_fileset = None
     if fileset.is_temporary:
         old_fileset = fileset
         fileset = FileSet.new_from_slug_and_revision(entry.slug, revno)
         old_fileset.copy_to(fileset)
     revision = cls(entry=entry, revno=revno,
                created_by=created_by, change_comment=change_comment,
                description=description, license=license, author=author,
                url=url)
     if old_fileset is not None:
         fileset.save()
     revision.fileset = fileset
     return revision
示例#3
0
def _get_fileset(request, entry, editable=False):
    sets = request.session.get('fileset')
    try:
        return FileSet.objects.get(name=sets[entry.slug])
    except (FileSet.DoesNotExist, KeyError, TypeError):
        pass

    last_revision = entry.last_revision
    if not editable:
        if last_revision is not None:
            return last_revision.fileset
        else:
            return None

    fs = FileSet.new_temporary()
    fs.save()
    request.session['fileset'] = {entry.slug: fs.name}
    if last_revision is not None and last_revision.fileset is not None:
        last_revision.fileset.copy_to(fs)

    return fs
示例#4
0
文件: views.py 项目: pv/scipyshare
def _get_fileset(request, entry, editable=False):
    sets = request.session.get('fileset')
    try:
        return FileSet.objects.get(name=sets[entry.slug])
    except (FileSet.DoesNotExist, KeyError, TypeError):
        pass

    last_revision = entry.last_revision
    if not editable:
        if last_revision is not None:
            return last_revision.fileset
        else:
            return None

    fs = FileSet.new_temporary()
    fs.save()
    request.session['fileset'] = {entry.slug: fs.name}
    if last_revision is not None and last_revision.fileset is not None:
        last_revision.fileset.copy_to(fs)

    return fs