Exemple #1
0
def trabajo_enviar_mail_agenciados(request,trabajo_id):
  
  trabajo=Trabajo.objects.get(pk=trabajo_id)

  if request.method == 'POST':
    form = MailAgenciadosForm(trabajo.rol_set.all(),request.POST)
    if form.is_valid():
      template = loader.get_template('trabajo/rol/admin/cuerpo_mail_agenciado.html')
      for rol in trabajo.rol_set.all():
        asunto = form.cleaned_data['asunto']
        agencia=Agencia.get_activa(request)
        ccs = [request.user.email,agencia.email]
        postulaciones = form.cleaned_data[MailAgenciadosForm.get_rol_fieldname(rol)]

        text_content = _(u'Este mensagem deve ser visualizado em formato HTML.')
        for postulacion in postulaciones:
          if postulacion.agenciado.mail:
            context = RequestContext(request, {'postulacion':postulacion, })
            html_content = template.render(context)
            destinatarios = [postulacion.agenciado.mail] + [x.email for x in postulacion.agenciado.mailagenciado_set.all()]
            msg = MailAgencia(asunto, text_content, destinatarios,ccs=ccs)
            msg.set_html_body(html_content)
            msg.send()
          else:
            messages.error(request, _(u'Agenciado %s não tem um email definido.'%postulacion.agenciado))
      messages.success(request, _(u'Trabalho enviado com sucesso a os agenciados selecionados.'))
      return redirect('/admin/trabajo/trabajo/%s/'%trabajo_id)
  else:
    asunto = _(u'Detalhe da Postulação para Trabalho "%s"') % (trabajo.titulo,)
    form = MailAgenciadosForm(trabajo.rol_set.all(),initial={'asunto': asunto})

  return render(request,'trabajo/trabajo/admin/enviar_mail_agenciados.html',{'form': form, 'trabajo': trabajo, })
Exemple #2
0
def trabajo_enviar_mail_productora(request,trabajo_id):
  
  trabajo=Trabajo.objects.get(pk=trabajo_id)

  if request.method == 'POST':
    form = MailProductoraForm(request.POST)
    if form.is_valid():
      template = loader.get_template('trabajo/trabajo/cuerpo_mail_productora.html')
      context = RequestContext(request, {'trabajo':trabajo, })
      asunto = form.cleaned_data['asunto']
      destinatarios = form.get_destinatarios()
      agencia=Agencia.get_activa(request)
      ccs = [request.user.email,agencia.email]

      text_content = _(u'Este mensagem deve ser visualizado em formato HTML.')
      html_content = template.render(context)
      msg = MailAgencia(asunto, text_content, destinatarios,ccs=ccs)
      msg.set_html_body(html_content)
      msg.send()
      messages.success(request, _(u'Trabalho enviado com sucesso a os seguintes destinatarios y copias: %(destinatarios)s %(copias)s') % {'destinatarios':str(destinatarios),'copias':str(ccs)})
      return redirect('/admin/trabajo/trabajo/%s/'%trabajo_id)
  else:
    asunto = _(u'Detalhe de trabalho "%s"') % (trabajo.titulo,)
    form = MailProductoraForm(initial={'destinatarios':trabajo.productora.mail, 'asunto': asunto })

  return render(request,'trabajo/trabajo/enviar_mail_productora.html',{'form': form, 'trabajo': trabajo, })
Exemple #3
0
def trabajo_enviar_mail_agenciados(request, trabajo_id):

    trabajo = Trabajo.objects.get(pk=trabajo_id)

    if request.method == 'POST':
        form = MailAgenciadosForm(trabajo.rol_set.all(), request.POST)
        if form.is_valid():
            template = loader.get_template(
                'trabajo/rol/admin/cuerpo_mail_agenciado.html')
            for rol in trabajo.rol_set.all():
                asunto = form.cleaned_data['asunto']
                agencia = Agencia.get_activa(request)
                ccs = [request.user.email, agencia.email]
                postulaciones = form.cleaned_data[
                    MailAgenciadosForm.get_rol_fieldname(rol)]

                text_content = _(
                    u'Este mensagem deve ser visualizado em formato HTML.')
                for postulacion in postulaciones:
                    if postulacion.agenciado.mail:
                        context = {
                            'postulacion': postulacion,
                        }
                        html_content = template.render(context)
                        destinatarios = [postulacion.agenciado.mail] + [
                            x.email for x in
                            postulacion.agenciado.mailagenciado_set.all()
                        ]
                        msg = MailAgencia(asunto,
                                          text_content,
                                          destinatarios,
                                          ccs=ccs)
                        msg.set_html_body(html_content)
                        msg.send()
                    else:
                        messages.error(
                            request,
                            _(u'Agenciado %s não tem um email definido.' %
                              postulacion.agenciado))
            messages.success(
                request,
                _(u'Trabalho enviado com sucesso a os agenciados selecionados.'
                  ))
            return redirect('/admin/trabajo/trabajo/%s/' % trabajo_id)
    else:
        asunto = _(u'Detalhe da Postulação para Trabalho "%s"') % (
            trabajo.titulo, )
        form = MailAgenciadosForm(trabajo.rol_set.all(),
                                  initial={'asunto': asunto})

    return render(request, 'trabajo/trabajo/admin/enviar_mail_agenciados.html',
                  {
                      'form': form,
                      'trabajo': trabajo,
                  })
Exemple #4
0
def enviar_mail(request):

    # Se crea el formulario con el campo trabajo y el campo estado en funcion del modelo Postulación
    # En caso de ser un metodo POST:
    if request.method == 'POST':
        form = EnvioMailForm(request.POST)
        # Se valida el formulario
        if form.is_valid():
            template = loader.get_template('correo/base.html')
            context = {
                'cuerpo': form.cleaned_data['cuerpo'],
            }
            asunto = form.cleaned_data['asunto']
            agencia = Agencia.get_activa(request)
            destinatarios = [
                agencia.email,
            ]
            ccs = [
                request.user.email,
            ]
            bccs = form.get_destinatarios()
            text_content = _(
                u'Este mensagem deve ser visualizado em formato HTML.')
            html_content = template.render(context)
            msg = MailAgencia(asunto,
                              text_content,
                              destinatarios,
                              ccs=ccs,
                              bccs=bccs)
            msg.set_html_body(html_content)
            msg.send()
            messages.success(request, _(u'Mails enviados con éxito'))

            return redirect('/admin/agencia/agenciado/')

    # Sino
    else:
        # Se obtienen los agenciados asociados a los IDs
        if request.method == 'GET':
            ids = request.GET['ids']
        else:
            ids = request.POST['ids']
        listado_ids = ids.split(',')
        agenciados = Agenciado.objects.filter(id__in=listado_ids)

        destinatarios = []
        for agenciado in agenciados:
            for mail in agenciado.get_mails():
                destinatarios.append(mail)

        form = EnvioMailForm(
            initial={'destinatarios': '\n'.join(destinatarios)})

    return render(request, 'admin/agencia/agenciado/enviar_mail.html',
                  {'form': form})
Exemple #5
0
  def enviar(self):

    template = loader.get_template(self.get_template_name())
    context = Context(self.get_context_dict())
    asunto = self.get_notification_title()
    destinatarios = [self.email_destinatario]
    agencia=Agencia.get_activa()
    ccs = self.get_ccs()

    text_content = _(u'Este mensagem deve ser visualizado em formato HTML.')
    html_content = template.render(context)
    msg = MailAgencia(asunto, text_content, destinatarios,ccs=ccs)
    msg.set_html_body(html_content)
    msg.send()

    self.fecha_envio = datetime.datetime.now()
    self.clean()
    self.save()
Exemple #6
0
    def enviar(self):

        template = loader.get_template(self.get_template_name())
        asunto = self.get_notification_title()
        destinatarios = [self.email_destinatario]
        agencia = Agencia.get_activa()
        ccs = self.get_ccs()

        text_content = _(
            u'Este mensagem deve ser visualizado em formato HTML.')
        html_content = template.render(self.get_context_dict())
        msg = MailAgencia(asunto, text_content, destinatarios, ccs=ccs)
        msg.set_html_body(html_content)
        msg.send()

        self.fecha_envio = now()
        self.clean()
        self.save()
Exemple #7
0
def enviar_mail(request):

  # Se crea el formulario con el campo trabajo y el campo estado en funcion del modelo Postulación
  # En caso de ser un metodo POST:
  if request.method == 'POST':
    form = EnvioMailForm(request.POST)
    # Se valida el formulario
    if form.is_valid():
      template = loader.get_template('correo/base.html')
      context = {'cuerpo':form.cleaned_data['cuerpo'], }
      asunto = form.cleaned_data['asunto']
      agencia=Agencia.get_activa(request)
      destinatarios = [agencia.email,]
      ccs = [request.user.email,]
      bccs = form.get_destinatarios()
      text_content = _(u'Este mensagem deve ser visualizado em formato HTML.')
      html_content = template.render(context)
      msg = MailAgencia(asunto, text_content, destinatarios,ccs=ccs,bccs=bccs)
      msg.set_html_body(html_content)
      msg.send()
      messages.success(request, _(u'Mails enviados con éxito'))

      return redirect('/admin/agencia/agenciado/')

  # Sino
  else:
    # Se obtienen los agenciados asociados a los IDs
    if request.method == 'GET':
      ids = request.GET['ids']
    else:
      ids = request.POST['ids']
    listado_ids=ids.split(',')
    agenciados=Agenciado.objects.filter(id__in=listado_ids)

    destinatarios = []
    for agenciado in agenciados:
      for mail in agenciado.get_mails():
        destinatarios.append(mail)
      
    form = EnvioMailForm(initial={'destinatarios': '\n'.join(destinatarios)})

  return render(request,'admin/agencia/agenciado/enviar_mail.html',{'form':form})
Exemple #8
0
def trabajo_enviar_mail_productora(request, trabajo_id):

    trabajo = Trabajo.objects.get(pk=trabajo_id)

    if request.method == 'POST':
        form = MailProductoraForm(request.POST)
        if form.is_valid():
            template = loader.get_template(
                'trabajo/trabajo/cuerpo_mail_productora.html')
            context = {
                'trabajo': trabajo,
            }
            asunto = form.cleaned_data['asunto']
            destinatarios = form.get_destinatarios()
            agencia = Agencia.get_activa(request)
            ccs = [request.user.email, agencia.email]

            text_content = _(
                u'Este mensagem deve ser visualizado em formato HTML.')
            html_content = template.render(context)
            msg = MailAgencia(asunto, text_content, destinatarios, ccs=ccs)
            msg.set_html_body(html_content)
            msg.send()
            messages.success(
                request,
                _(u'Trabalho enviado com sucesso a os seguintes destinatarios y copias: %(destinatarios)s %(copias)s'
                  ) % {
                      'destinatarios': str(destinatarios),
                      'copias': str(ccs)
                  })
            return redirect('/admin/trabajo/trabajo/%s/' % trabajo_id)
    else:
        asunto = _(u'Detalhe de trabalho "%s"') % (trabajo.titulo, )
        form = MailProductoraForm(initial={
            'destinatarios': trabajo.productora.mail,
            'asunto': asunto
        })

    return render(request, 'trabajo/trabajo/enviar_mail_productora.html', {
        'form': form,
        'trabajo': trabajo,
    })