Example #1
0
    def post(self, *args, **kwargs):
        request = self.request
        messages = self.request.POST.getlist("message-checkbox")

        if self.request.POST.get("fake-message"):
            from api import mail

            mail(request, "message", "mail", False, "subject", self.request.user)
            return HttpResponseRedirect("/")

        if not messages:
            warning(request, "Por favor, selecione uma ou mais mensagens.")
            return ajax_or_none(request)

        if self.request.POST.get("mark_read", None):
            read_messages(messages, request=request)
            return ajax_or_none(request)

        if self.request.POST.get("delete", None):
            delete_messages(messages, request=request)
            return ajax_or_none(request)

        # shouldn't land here, but will send a message anyway
        warning(request, "Algo de errado aconteceu")

        return ajax_or_none(request)
Example #2
0
def create_codereview_if_neccessary_message(request, issue):
    """Create a message with a link to create patchset if it's necessary for the issue.

    If there are pushes after latest patchset, it's necessary to create another patchset to reflect the full set
    of changes.
    """
    case_id = get_case_id(issue)
    _, case_title, original_branch, feature_branch, ci_project = get_fogbugz_case_info(case_id)

    if feature_branch and original_branch:
        source_vcs, source_url, source_revision, source_branch_is_local, _ = parse_branch_vcs_info(
            feature_branch, settings.FEATURE_BRANCH_DEFAULT_PREFIX)
        if os.path.isdir(source_url):
            source = GuessVCS(
                attrdict({'revision': source_revision, 'vcs': source_vcs}), source_url)

            source_revision = source.CheckRevision().strip()

            if issue.latest_patch_rev != source_revision:
                messages_api.warning(
                    request, 'There are commits after the latest created patchset. '
                    'Please create a <a href="{0}?case={1}">new one</a>'.format(
                        reverse('process_from_fogbugz'),
                        case_id
                    )
                )
    return ''
Example #3
0
    def post(self, request, *args, **kwargs):
        machine = shortcuts.get_object_or_404(self.model, pk=self.kwargs.get('pk'))
        force = request.GET.get('force')        
        
        form = self.__get_form(machine, request.POST)
        if force:
            form.force = True
 
        if form.is_valid():
            if not form.has_changed():
                form.reset_errors()
                api.info(request, _(u'Nenhuma alteração efetuada'))
                return shortcuts.render(request, self.template_name, {'form': form,
                                                                      'object': machine})
            
            machine = form.save()
            
            api.success(request, _(u'Máquina alterada com sucesso'))
            
            if form.dynamic_pool_full:
                api.warning(request, _(u'O pool associado a máquina tem mais máquinas do que IPs disponíveis.'))
            
            models.Log(user=request.user, msg=_(u"Máquina '%s' alterada" % machine.mac)).save()
            return shortcuts.redirect(urlresolvers.reverse('webradius:mac_detail', args=(machine.id,)))
        
        if form.dynamic_ip_in_use:
            return shortcuts.render(request, self.template_force_name, {'form': form,
                                                                        'object': machine})
        else:
            return shortcuts.render(request, self.template_name, {'form': form,
                                                                  'object': machine})
Example #4
0
 def post(self, *args, **kwargs):
     try:
         product_pk = int(self.request.POST['product_pk'])
         product = Product.objects.get(pk=product_pk)
     except (KeyError, ValueError, Product.DoesNotExist):
         return HttpResponseBadRequest("Bad request input")
     issue = Issue(target=product, user=self.request.user)
     form = IssueCreationForm(self.request.POST or None, instance=issue)
     if form.is_valid():
         issue = form.save()
         return HttpResponseRedirect(
                 reverse("shopie:issue_detail",
                 kwargs={
                     'product_slug':product.slug,
                     'product_pk': product.pk,
                     'pk':issue.pk
                 }))
     else:
         message_api.warning(self.request, "Ups, form input tidak valid.")
         return HttpResponseRedirect(
             reverse('shopie:product_issues',
             kwargs={
                 'slug': product.slug,
                 'pk': product.pk
             }))
Example #5
0
def create_codereview_if_neccessary_message(request, issue):
    """Create a message with a link to create patchset if it's necessary for the issue.

    If there are pushes after latest patchset, it's necessary to create another patchset to reflect the full set
    of changes.
    """
    case_id = get_case_id(issue)
    _, case_title, original_branch, feature_branch, ci_project, target_branch = get_fogbugz_case_info(
        request, case_id)

    if feature_branch and original_branch:
        source_vcs, source_url, source_revision, source_branch_is_local, _ = parse_branch_vcs_info(
            feature_branch, settings.FEATURE_BRANCH_DEFAULT_PREFIX)
        if os.path.isdir(source_url):
            source = GuessVCS(
                attrdict({
                    'revision': source_revision,
                    'vcs': source_vcs
                }), source_url)

            try:
                source_revision = source.CheckRevision().strip()
            except RuntimeError:
                return ''

            if issue.latest_patch_rev != source_revision:
                messages_api.warning(
                    request,
                    'There are commits after the latest created patchset. '
                    'Please create a <a href="{0}?case={1}">new one</a>'.
                    format(reverse('process_from_fogbugz'), case_id))
    return ''
Example #6
0
    def post(self, request, *args, **kwargs):
        try:
            product_id = int(self.request.POST['add_item_id'])
            product_quantity = int(self.request.POST.get('add_item_quantity', 1))
        except (KeyError, ValueError):
            message_api.warning(self.request, 'error, silahkan pilih product')
            return HttpResponseRedirect(reverse('shopie:cart'))

        product = Product.objects.get(pk=product_id)
        order = get_or_create_current_order(self.request, save=True)
        item = order.add_item(product, product_quantity)
        order.save()

        return self.post_success(product, item)
Example #7
0
    def get(self, request, *args, **kwargs):
        referer = self.request.META.get('HTTP_REFERER')
        pk = self.kwargs.get('username')

        try:
            self.object = UserProfile.objects.get(pk=pk)
        except ObjectDoesNotExist:
            warning(self.request, _(u"User '%s' was not found.") % pk)
            return HttpResponseRedirect(referer or reverse('profiles-userprofile-list'))

        if self.object is not None:
            if self.object.user.is_active:
                warning(self.request, _(u"User '%s' is already active.") %
                        profile.pk)
                return HttpResponseRedirect(reverse(*profile.get_absolute_url()))
            else:
                return super(UserProfileActivate, self).get(request, *args, **kwargs)

        return HttpResponseRedirect(referer or reverse('profiles-userprofile-list'))
Example #8
0
 def get_object(self):
     """get action"""
     action = get_object_or_404(models.Action, pk=self.kwargs['pk'])
     try:
         return action.actiondocument
     except self.model.DoesNotExist:
         warning_text = ""
         if not action.type:
             warning_text = _(u"The action has no type set: Unable to create the corresponding document")
         elif not action.type.default_template:
             warning_text = _(
                 u"The action type has no document template defined: Unable to create the corresponding document"
             )
         if warning_text:
             logger.warning(warning_text)
             user_message.warning(self.request, warning_text)
             raise Http404
         else:
             return self.model.objects.create(action=action, template=action.type.default_template)
 def post(self, *args, **kwargs):
     request = self.request
     messages = self.request.POST.getlist('message-checkbox')
             
     if not messages:
         warning(request, 'Por favor, selecione uma ou mais mensagens.')
         return ajax_or_none(request)
     
     if self.request.POST.get('mark_read', None):
         read_messages(messages, request=request)
         return ajax_or_none(request)
             
     if self.request.POST.get('delete', None):
         delete_messages(messages, request=request)
         return ajax_or_none(request)
         
     # shouldn't land here, but will send a message anyway
     warning(request, 'Algo de errado aconteceu')
     
     return ajax_or_none(request)
Example #10
0
    def post(self, request, *args, **kwargs):
        username = self.request.POST.get('username', None)
        password = self.request.POST.get('password', None)
        user = authenticate(username=username, password=password)

        if not user:
            return self.fail(request, *args, **kwargs)

        if user and not user.is_active:
            warning(self.request, u"""Esta conta não está ativa. Em caso
                    de dúvidas, entre em contato com o administrador.""")

            return HttpResponseRedirect(self.request.META.get('PATH_INFO'))

        else:
            if user and user.is_active:
                login(self.request, user)
                goto = self.request.POST.get('next', '')
                if goto == '':
                    goto = '/'
                return HttpResponseRedirect(goto)
Example #11
0
 def get_object(self):
     """get action"""
     action = get_object_or_404(models.Action, pk=self.kwargs['pk'])
     try:
         return action.actiondocument
     except self.model.DoesNotExist:
         warning_text = ""
         if not action.type:
             warning_text = _(
                 "The action has no type set: Unable to create the corresponding document"
             )
         elif not action.type.default_template:
             warning_text = _(
                 "The action type has no document template defined: Unable to create the corresponding document"
             )
         if warning_text:
             logger.warning(warning_text)
             user_message.warning(self.request, warning_text)
             raise Http404
         else:
             return self.model.objects.create(
                 action=action, template=action.type.default_template)
Example #12
0
 def post(self, request, *args, **kwargs):
     force = request.GET.get('force')
     
     form = macinfo.MacAddForm(request.POST)
     if force:
         form.force = True
     
     if form.is_valid():
         machine = form.save()
                        
         models.Log(user=request.user, msg=_(u"Máquina '%s' cadastrado" % machine.mac)).save()                
         api.success(request, _(u'Máquina cadastrada com sucesso'))
         
         if form.dynamic_pool_full:
             api.warning(request, _(u'O pool associado a máquina tem mais máquinas do que IPs disponíveis.'))
         
         return shortcuts.redirect(urlresolvers.reverse('webradius:mac_detail', args=(machine.id,)))
     
     if form.dynamic_ip_in_use:
         return shortcuts.render(request, self.template_force_name, {'form': form})
     else:
         return shortcuts.render(request, self.template_name, {'form': form})
Example #13
0
 def fail(self, request, *args, **kwargs):
     warning(self.request, u"""Usuário ou senha incorretos.""")
     return self.get(request, *args, **kwargs)