Esempio n. 1
0
    def create_view(self, request, params):
        f = self.addform(request, data=params)
        if f.is_valid():
            cd = f.cleaned_data
            name = cd.get('name')
            des = cd.get('description')
            nview = PortfolioView(code=name,
                                  name=name,
                                  description=des,
                                  user=request.user,
                                  fund=self.fund)
            nview.save()
            if cd.get('default', False):
                nview.set_as_default(request.user)

            cfrom = cd.get('copy_from', None)
            if cfrom:
                folders = cfrom.portfolio_set.filter(Q(parent__isnull=True))
                for f in folders:
                    f.copytoview(nview)

            dt = datetime.date.today()
            url = self.buildurl(dt, nview)
            return jredirect(url)
        else:
            return f.jerrors
Esempio n. 2
0
 def make_default_view(self):
     '''
     Create a default view.
     This can be reimplemented by derived classes
     '''
     try:
         user = User.objects.get(username=self.default_system_uder)
     except:
         raise Http404
     view = PortfolioView(name=self.default_view_name,
                          user=user,
                          fund=self.fund,
                          default=True)
     view.save()
     return view