Example #1
0
 def post(self, *args, **kwargs):
     self.asset = get_object_or_404(Asset.admin_objects,
                                    id=kwargs.get('asset_id'))
     mode = _get_mode(self.request)
     self.asset_form = EditPartForm(self.request.POST,
                                    instance=self.asset,
                                    mode=mode)
     self.office_info_form = OfficeForm(self.request.POST,
                                        self.request.FILES)
     self.part_info_form = BasePartForm(self.request.POST, mode=mode)
     if all((self.asset_form.is_valid(), self.office_info_form.is_valid(),
             self.part_info_form.is_valid())):
         modifier_profile = self.request.user.get_profile()
         self.asset = _update_asset(modifier_profile, self.asset,
                                    self.asset_form.cleaned_data)
         self.asset = _update_office_info(
             modifier_profile.user, self.asset,
             self.office_info_form.cleaned_data)
         self.asset = _update_part_info(modifier_profile.user, self.asset,
                                        self.part_info_form.cleaned_data)
         self.asset.save(user=self.request.user)
         messages.success(self.request, _("Part of asset was edited."))
         cat = self.request.path.split('/')[2]
         return HttpResponseRedirect('/assets/%s/edit/part/%s/' %
                                     (cat, self.asset.id))
     else:
         messages.error(self.request, _("Please correct the errors."))
         messages.error(self.request, self.asset_form.non_field_errors())
     return super(EditPart, self).get(*args, **kwargs)
Example #2
0
 def get(self, *args, **kwargs):
     self.initialize_vars()
     self.asset = get_object_or_404(Asset.admin_objects,
                                    id=kwargs.get('asset_id'))
     if self.asset.device_info:  # it isn't part asset
         raise Http404()
     self.asset_form = EditPartForm(instance=self.asset, mode=self.mode)
     self.write_office_info2asset_form()
     self.part_info_form = BasePartForm(
         instance=self.asset.part_info,
         mode=self.mode,
     )
     return super(EditPart, self).get(*args, **kwargs)
Example #3
0
 def get(self, *args, **kwargs):
     self.asset = get_object_or_404(Asset.admin_objects,
                                    id=kwargs.get('asset_id'))
     if self.asset.device_info:  # it isn't part asset
         raise Http404()
     mode = _get_mode(self.request)
     self.asset_form = EditPartForm(instance=self.asset, mode=mode)
     self.office_info_form = OfficeForm(instance=self.asset.office_info)
     self.part_info_form = BasePartForm(
         instance=self.asset.part_info,
         mode=mode,
     )
     return super(EditPart, self).get(*args, **kwargs)
Example #4
0
 def post(self, *args, **kwargs):
     self.asset = get_object_or_404(
         Asset.admin_objects,
         id=kwargs.get('asset_id')
     )
     mode = self.mode
     self.asset_form = EditPartForm(
         self.request.POST,
         instance=self.asset,
         mode=mode
     )
     self.office_info_form = OfficeForm(
         self.request.POST, self.request.FILES)
     self.part_info_form = BasePartForm(self.request.POST, mode=mode)
     if all((
         self.asset_form.is_valid(),
         self.office_info_form.is_valid(),
         self.part_info_form.is_valid()
     )):
         modifier_profile = self.request.user.get_profile()
         self.asset = _update_asset(
             modifier_profile, self.asset,
             self.asset_form.cleaned_data
         )
         new_src, new_dst = _move_data(
             self.asset_form.cleaned_data,
             self.office_info_form.cleaned_data,
             ['imei'],
         )
         self.asset_form.cleaned_data = new_src
         self.office_info_form.cleaned_data = new_dst
         self.asset = _update_office_info(
             modifier_profile.user, self.asset,
             self.office_info_form.cleaned_data
         )
         self.asset = _update_part_info(
             modifier_profile.user, self.asset,
             self.part_info_form.cleaned_data
         )
         self.asset.save(user=self.request.user)
         self.asset.supports.clear()
         for support in self.asset_form.cleaned_data.get(
             'supports', []
         ):
             self.asset.supports.add(support)
         messages.success(self.request, _("Part of asset was edited."))
         cat = self.request.path.split('/')[2]
         return HttpResponseRedirect(
             '/assets/%s/edit/part/%s/' % (cat, self.asset.id)
         )
     else:
         messages.error(self.request, _("Please correct the errors."))
         messages.error(self.request, self.asset_form.non_field_errors())
     return super(EditPart, self).get(*args, **kwargs)
Example #5
0
 def get(self, *args, **kwargs):
     self.asset = get_object_or_404(
         Asset.admin_objects,
         id=kwargs.get('asset_id')
     )
     if self.asset.device_info:  # it isn't part asset
         raise Http404()
     mode = _get_mode(self.request)
     self.asset_form = EditPartForm(instance=self.asset, mode=mode)
     self.office_info_form = OfficeForm(instance=self.asset.office_info)
     self.part_info_form = BasePartForm(
         instance=self.asset.part_info, mode=mode,
     )
     return super(EditPart, self).get(*args, **kwargs)
Example #6
0
 def get(self, *args, **kwargs):
     self.initialize_vars()
     self.asset = get_object_or_404(
         Asset.admin_objects,
         id=kwargs.get('asset_id')
     )
     if self.asset.device_info:  # it isn't part asset
         raise Http404()
     self.asset_form = EditPartForm(instance=self.asset, mode=self.mode)
     self.write_office_info2asset_form()
     self.part_info_form = BasePartForm(
         instance=self.asset.part_info, mode=self.mode,
     )
     return super(EditPart, self).get(*args, **kwargs)
Example #7
0
class EditPart(Base):
    template_name = 'assets/edit_part.html'

    def get_context_data(self, **kwargs):
        ret = super(EditPart, self).get_context_data(**kwargs)
        status_history = AssetHistoryChange.objects.all().filter(
            asset=kwargs.get('asset_id'),
            field_name__exact='status').order_by('-date')
        ret.update({
            'asset_form': self.asset_form,
            'office_info_form': self.office_info_form,
            'part_info_form': self.part_info_form,
            'form_id': 'edit_part_form',
            'edit_mode': True,
            'status_history': status_history,
            'history_link': self.get_history_link(),
            'parent_link': self.get_parent_link(),
        })
        return ret

    def get(self, *args, **kwargs):
        self.asset = get_object_or_404(Asset.admin_objects,
                                       id=kwargs.get('asset_id'))
        if self.asset.device_info:  # it isn't part asset
            raise Http404()
        mode = _get_mode(self.request)
        self.asset_form = EditPartForm(instance=self.asset, mode=mode)
        self.office_info_form = OfficeForm(instance=self.asset.office_info)
        self.part_info_form = BasePartForm(
            instance=self.asset.part_info,
            mode=mode,
        )
        return super(EditPart, self).get(*args, **kwargs)

    def post(self, *args, **kwargs):
        self.asset = get_object_or_404(Asset.admin_objects,
                                       id=kwargs.get('asset_id'))
        mode = _get_mode(self.request)
        self.asset_form = EditPartForm(self.request.POST,
                                       instance=self.asset,
                                       mode=mode)
        self.office_info_form = OfficeForm(self.request.POST,
                                           self.request.FILES)
        self.part_info_form = BasePartForm(self.request.POST, mode=mode)
        if all((self.asset_form.is_valid(), self.office_info_form.is_valid(),
                self.part_info_form.is_valid())):
            modifier_profile = self.request.user.get_profile()
            self.asset = _update_asset(modifier_profile, self.asset,
                                       self.asset_form.cleaned_data)
            self.asset = _update_office_info(
                modifier_profile.user, self.asset,
                self.office_info_form.cleaned_data)
            self.asset = _update_part_info(modifier_profile.user, self.asset,
                                           self.part_info_form.cleaned_data)
            self.asset.save(user=self.request.user)
            messages.success(self.request, _("Part of asset was edited."))
            cat = self.request.path.split('/')[2]
            return HttpResponseRedirect('/assets/%s/edit/part/%s/' %
                                        (cat, self.asset.id))
        else:
            messages.error(self.request, _("Please correct the errors."))
            messages.error(self.request, self.asset_form.non_field_errors())
        return super(EditPart, self).get(*args, **kwargs)

    def get_parent_link(self):
        mode = _get_mode(self.request)
        asset = self.asset.part_info.source_device
        url = ''
        if asset:
            if mode == 'dc':
                url = reverse('dc_device_edit', args=[
                    asset.id,
                ])
            elif mode == 'back_office':
                url = reverse('back_office_device_edit', args=[
                    asset.id,
                ])
        return url

    def get_history_link(self):
        mode = _get_mode(self.request)
        asset_id = self.asset.id
        if mode == 'dc':
            url = reverse('dc_part_history', args=[
                asset_id,
            ])
        elif mode == 'back_office':
            url = reverse('back_office_part_history', args=[
                asset_id,
            ])
        return url
Example #8
0
class EditPart(Base):
    template_name = 'assets/edit_part.html'

    def get_context_data(self, **kwargs):
        ret = super(EditPart, self).get_context_data(**kwargs)
        status_history = AssetHistoryChange.objects.all().filter(
            asset=kwargs.get('asset_id'), field_name__exact='status'
        ).order_by('-date')
        ret.update({
            'asset_form': self.asset_form,
            'office_info_form': self.office_info_form,
            'part_info_form': self.part_info_form,
            'form_id': 'edit_part_form',
            'edit_mode': True,
            'status_history': status_history,
            'history_link': self.get_history_link(),
            'parent_link': self.get_parent_link(),
        })
        return ret

    def get(self, *args, **kwargs):
        self.asset = get_object_or_404(
            Asset.admin_objects,
            id=kwargs.get('asset_id')
        )
        if self.asset.device_info:  # it isn't part asset
            raise Http404()
        mode = _get_mode(self.request)
        self.asset_form = EditPartForm(instance=self.asset, mode=mode)
        self.office_info_form = OfficeForm(instance=self.asset.office_info)
        self.part_info_form = BasePartForm(
            instance=self.asset.part_info, mode=mode,
        )
        return super(EditPart, self).get(*args, **kwargs)

    def post(self, *args, **kwargs):
        self.asset = get_object_or_404(
            Asset.admin_objects,
            id=kwargs.get('asset_id')
        )
        mode = _get_mode(self.request)
        self.asset_form = EditPartForm(
            self.request.POST,
            instance=self.asset,
            mode=mode
        )
        self.office_info_form = OfficeForm(
            self.request.POST, self.request.FILES)
        self.part_info_form = BasePartForm(self.request.POST, mode=mode)
        if all((
            self.asset_form.is_valid(),
            self.office_info_form.is_valid(),
            self.part_info_form.is_valid()
        )):
            modifier_profile = self.request.user.get_profile()
            self.asset = _update_asset(
                modifier_profile, self.asset,
                self.asset_form.cleaned_data
            )
            self.asset = _update_office_info(
                modifier_profile.user, self.asset,
                self.office_info_form.cleaned_data
            )
            self.asset = _update_part_info(
                modifier_profile.user, self.asset,
                self.part_info_form.cleaned_data
            )
            self.asset.save(user=self.request.user)
            messages.success(self.request, _("Part of asset was edited."))
            cat = self.request.path.split('/')[2]
            return HttpResponseRedirect(
                '/assets/%s/edit/part/%s/' % (cat, self.asset.id)
            )
        else:
            messages.error(self.request, _("Please correct the errors."))
            messages.error(self.request, self.asset_form.non_field_errors())
        return super(EditPart, self).get(*args, **kwargs)

    def get_parent_link(self):
        mode = _get_mode(self.request)
        asset = self.asset.part_info.source_device
        url = ''
        if asset:
            if mode == 'dc':
                url = reverse('dc_device_edit', args=[asset.id, ])
            elif mode == 'back_office':
                url = reverse('back_office_device_edit', args=[asset.id, ])
        return url

    def get_history_link(self):
        mode = _get_mode(self.request)
        asset_id = self.asset.id
        if mode == 'dc':
            url = reverse('dc_part_history', args=[asset_id, ])
        elif mode == 'back_office':
            url = reverse('back_office_part_history', args=[asset_id, ])
        return url
Example #9
0
class EditPart(AssetsBase):
    template_name = 'assets/edit_part.html'

    def initialize_vars(self):
        self.office_info_form = None

    def get_context_data(self, **kwargs):
        ret = super(EditPart, self).get_context_data(**kwargs)
        status_history = AssetHistoryChange.objects.all().filter(
            asset=kwargs.get('asset_id'), field_name__exact='status'
        ).order_by('-date')
        ret.update({
            'asset_form': self.asset_form,
            'office_info_form': self.office_info_form,
            'part_info_form': self.part_info_form,
            'form_id': 'edit_part_form',
            'edit_mode': True,
            'status_history': status_history,
            'history_link': self.get_history_link(),
            'parent_link': self.get_parent_link(),
            'asset': self.asset,
        })
        return ret

    def get(self, *args, **kwargs):
        self.initialize_vars()
        self.asset = get_object_or_404(
            Asset.admin_objects,
            id=kwargs.get('asset_id')
        )
        if self.asset.device_info:  # it isn't part asset
            raise Http404()
        self.asset_form = EditPartForm(instance=self.asset, mode=self.mode)
        self.write_office_info2asset_form()
        self.part_info_form = BasePartForm(
            instance=self.asset.part_info, mode=self.mode,
        )
        return super(EditPart, self).get(*args, **kwargs)

    def post(self, *args, **kwargs):
        self.asset = get_object_or_404(
            Asset.admin_objects,
            id=kwargs.get('asset_id')
        )
        mode = self.mode
        self.asset_form = EditPartForm(
            self.request.POST,
            instance=self.asset,
            mode=mode
        )
        self.office_info_form = OfficeForm(
            self.request.POST, self.request.FILES)
        self.part_info_form = BasePartForm(self.request.POST, mode=mode)
        if all((
            self.asset_form.is_valid(),
            self.office_info_form.is_valid(),
            self.part_info_form.is_valid()
        )):
            modifier_profile = self.request.user.get_profile()
            self.asset = _update_asset(
                modifier_profile, self.asset,
                self.asset_form.cleaned_data
            )
            new_src, new_dst = _move_data(
                self.asset_form.cleaned_data,
                self.office_info_form.cleaned_data,
                ['imei'],
            )
            self.asset_form.cleaned_data = new_src
            self.office_info_form.cleaned_data = new_dst
            self.asset = _update_office_info(
                modifier_profile.user, self.asset,
                self.office_info_form.cleaned_data
            )
            self.asset = _update_part_info(
                modifier_profile.user, self.asset,
                self.part_info_form.cleaned_data
            )
            self.asset.save(user=self.request.user)
            self.asset.supports.clear()
            for support in self.asset_form.cleaned_data.get(
                'supports', []
            ):
                self.asset.supports.add(support)
            messages.success(self.request, _("Part of asset was edited."))
            cat = self.request.path.split('/')[2]
            return HttpResponseRedirect(
                '/assets/%s/edit/part/%s/' % (cat, self.asset.id)
            )
        else:
            messages.error(self.request, _("Please correct the errors."))
            messages.error(self.request, self.asset_form.non_field_errors())
        return super(EditPart, self).get(*args, **kwargs)

    def get_parent_link(self):
        asset = self.asset.part_info.source_device
        if asset:
            return reverse('device_edit', kwargs={
                'asset_id': asset.id,
                'mode': self.mode,
            })

    def get_history_link(self):
        return reverse('part_history', kwargs={
            'asset_id': self.asset.id,
            'mode': self.mode,
        })
Example #10
0
class EditPart(HardwareModeMixin, SubmoduleModeMixin, AssetsBase):
    detect_changes = True
    template_name = 'assets/edit_part.html'

    def initialize_vars(self):
        self.office_info_form = None

    def get_context_data(self, **kwargs):
        context = super(EditPart, self).get_context_data(**kwargs)
        context.update({
            'asset_form': self.asset_form,
            'office_info_form': self.office_info_form,
            'part_info_form': self.part_info_form,
            'form_id': 'edit_part_form',
            'edit_mode': True,
            'parent_link': self.get_parent_link(),
            'asset': self.asset,
        })
        return context

    def get(self, *args, **kwargs):
        self.initialize_vars()
        self.asset = get_object_or_404(Asset.admin_objects,
                                       id=kwargs.get('asset_id'))
        if self.asset.device_info:  # it isn't part asset
            raise Http404()
        self.asset_form = EditPartForm(instance=self.asset, mode=self.mode)
        self.write_office_info2asset_form()
        self.part_info_form = BasePartForm(
            instance=self.asset.part_info,
            mode=self.mode,
        )
        return super(EditPart, self).get(*args, **kwargs)

    def post(self, *args, **kwargs):
        self.asset = get_object_or_404(Asset.admin_objects,
                                       id=kwargs.get('asset_id'))
        mode = self.mode
        self.asset_form = EditPartForm(self.request.POST,
                                       instance=self.asset,
                                       mode=mode)
        self.office_info_form = OfficeForm(self.request.POST,
                                           self.request.FILES)
        self.part_info_form = BasePartForm(self.request.POST, mode=mode)
        if all((self.asset_form.is_valid(), self.office_info_form.is_valid(),
                self.part_info_form.is_valid())):
            modifier_profile = self.request.user.get_profile()
            self.asset = _update_asset(modifier_profile, self.asset,
                                       self.asset_form.cleaned_data)
            new_src, new_dst = _move_data(
                self.asset_form.cleaned_data,
                self.office_info_form.cleaned_data,
                ['imei'],
            )
            self.asset_form.cleaned_data = new_src
            self.office_info_form.cleaned_data = new_dst
            self.asset = _update_office_info(
                modifier_profile.user, self.asset,
                self.office_info_form.cleaned_data)
            self.asset = _update_part_info(modifier_profile.user, self.asset,
                                           self.part_info_form.cleaned_data)
            self.asset.save(user=self.request.user)
            self.asset.supports.clear()
            for support in self.asset_form.cleaned_data.get('supports', []):
                self.asset.supports.add(support)
            messages.success(self.request, _("Part of asset was edited."))
            cat = self.request.path.split('/')[2]
            return HttpResponseRedirect('/assets/%s/edit/part/%s/' %
                                        (cat, self.asset.id))
        else:
            messages.error(self.request, _("Please correct the errors."))
            messages.error(self.request, self.asset_form.non_field_errors())
        return super(EditPart, self).get(*args, **kwargs)

    def get_parent_link(self):
        asset = self.asset.part_info.source_device
        if asset:
            return reverse('device_edit',
                           kwargs={
                               'asset_id': asset.id,
                               'mode': self.mode,
                           })