diff --git a/etc/migracao/migra.py b/etc/migracao/migra.py index a39a3f6..47c085c 100755 --- a/etc/migracao/migra.py +++ b/etc/migracao/migra.py @@ -313,7 +313,7 @@ def migra_convenios_casas(filename): ###Relatório### if((projeto or line[DATA_TERMO_ACEITE_COL]) and line[NUM_PROCESSO_SF_COL].__len__() == 0): f1.write(casa.nome + "," + casa.municipio.uf.sigla + "\n") - if(projeto == None and line[DATA_TERMO_ACEITE_COL].__len__() != 0): + if(projeto is None and line[DATA_TERMO_ACEITE_COL].__len__() != 0): f2.write(casa.nome + "," + casa.municipio.uf.sigla + "\n") ###### projeto = None diff --git a/sigi/apps/casas/reports.py b/sigi/apps/casas/reports.py index d2b05f9..9c90c97 100644 --- a/sigi/apps/casas/reports.py +++ b/sigi/apps/casas/reports.py @@ -556,19 +556,19 @@ class InfoCasaLegislativa(ReportDefault): ObjectValue(attribute_name='num_processo_sf', left=convenio_left[2] * cm), ObjectValue(attribute_name='data_adesao', left=convenio_left[3] * cm, get_value=lambda instance: - instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao != None else '-' + instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao is not None else '-' ), ObjectValue(attribute_name='data_retorno_assinatura', left=convenio_left[4] * cm, get_value=lambda instance: - instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura != None else '-' + instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura is not None else '-' ), ObjectValue(attribute_name='data_termo_aceite', left=convenio_left[5] * cm, get_value=lambda instance: - instance.data_termo_aceite.strftime('%d/%m/%Y') if instance.data_termo_aceite != None else '-' + instance.data_termo_aceite.strftime('%d/%m/%Y') if instance.data_termo_aceite is not None else '-' ), ObjectValue(attribute_name='data_pub_diario', left=convenio_left[6] * cm, get_value=lambda instance: - instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario != None else '-' + instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario is not None else '-' ), ], #borders = {'all':True}, diff --git a/sigi/apps/casas/views.py b/sigi/apps/casas/views.py index 1214cac..1a1b543 100644 --- a/sigi/apps/casas/views.py +++ b/sigi/apps/casas/views.py @@ -17,6 +17,7 @@ from django.core.paginator import Paginator, InvalidPage, EmptyPage from django.conf import settings import csv +from functools import reduce # @param qs: queryset # @param o: (int) number of order field @@ -59,7 +60,7 @@ def carrinhoOrGet_for_qs(request): """ Verifica se existe casas na sessão se não verifica get e retorna qs correspondente. """ - if request.session.has_key('carrinho_casas'): + if 'carrinho_casas' in request.session: ids = request.session['carrinho_casas'] qs = CasaLegislativa.objects.filter(pk__in=ids) else: @@ -72,7 +73,7 @@ def carrinhoOrGet_for_qs(request): def adicionar_casas_carrinho(request, queryset=None, id=None): if request.method == 'POST': ids_selecionados = request.POST.getlist('_selected_action') - if not request.session.has_key('carrinho_casas'): + if 'carrinho_casas' not in request.session: request.session['carrinho_casas'] = ids_selecionados else: lista = request.session['carrinho_casas'] @@ -102,7 +103,7 @@ def visualizar_carrinho(request): except (EmptyPage, InvalidPage): paginas = paginator.page(paginator.num_pages) - carrinhoIsEmpty = not(request.session.has_key('carrinho_casas')) + carrinhoIsEmpty = not('carrinho_casas' in request.session) return render_to_response( 'casas/carrinho.html', @@ -116,7 +117,7 @@ def visualizar_carrinho(request): def excluir_carrinho(request): - if request.session.has_key('carrinho_casas'): + if 'carrinho_casas' in request.session: del request.session['carrinho_casas'] return HttpResponseRedirect('.') @@ -124,7 +125,7 @@ def excluir_carrinho(request): def deleta_itens_carrinho(request): if request.method == 'POST': ids_selecionados = request.POST.getlist('_selected_action') - if request.session.has_key('carrinho_casas'): + if 'carrinho_casas' in request.session: lista = request.session['carrinho_casas'] for item in ids_selecionados: lista.remove(item) @@ -142,9 +143,9 @@ def labels_report(request, id=None, tipo=None, formato='3x9_etiqueta'): """ if request.POST: - if request.POST.has_key('tipo_etiqueta'): + if 'tipo_etiqueta' in request.POST: tipo = request.POST['tipo_etiqueta'] - if request.POST.has_key('tamanho_etiqueta'): + if 'tamanho_etiqueta' in request.POST: formato = request.POST['tamanho_etiqueta'] if tipo == 'sem_presidente': @@ -171,7 +172,7 @@ def labels_report_parlamentar(request, id=None, formato='3x9_etiqueta'): """ if request.POST: - if request.POST.has_key('tamanho_etiqueta'): + if 'tamanho_etiqueta' in request.POST: formato = request.POST['tamanho_etiqueta'] if id: @@ -198,7 +199,7 @@ def carrinhoOrGet_for_parlamentar_qs(request): """ Verifica se existe parlamentares na sessão se não verifica get e retorna qs correspondente. """ - if request.session.has_key('carrinho_casas'): + if 'carrinho_casas' in request.session: ids = request.session['carrinho_casas'] legislaturas = [c.legislatura_set.latest('data_inicio') for c in CasaLegislativa.objects.filter(pk__in=ids, legislatura__id__isnull=False).distinct()] mandatos = reduce(lambda x, y: x | y, [l.mandato_set.all() for l in legislaturas]) @@ -237,7 +238,7 @@ def labels_report_sem_presidente(request, id=None, formato='2x5_etiqueta'): def report(request, id=None, tipo=None): if request.POST: - if request.POST.has_key('tipo_relatorio'): + if 'tipo_relatorio' in request.POST: tipo = request.POST['tipo_relatorio'] if tipo == 'completo': diff --git a/sigi/apps/convenios/admin.py b/sigi/apps/convenios/admin.py index a7796ac..6f76958 100644 --- a/sigi/apps/convenios/admin.py +++ b/sigi/apps/convenios/admin.py @@ -108,7 +108,7 @@ class ConvenioAdmin(admin.ModelAdmin): relatorio.short_description = u'Exportar convênios selecionados para PDF' def adicionar_convenios(self, request, queryset): - if request.session.has_key('carrinho_convenios'): + if 'carrinho_convenios' in request.session: q1 = len(request.session['carrinho_convenios']) else: q1 = 0 diff --git a/sigi/apps/convenios/models.py b/sigi/apps/convenios/models.py index beb9135..f313cfb 100644 --- a/sigi/apps/convenios/models.py +++ b/sigi/apps/convenios/models.py @@ -22,7 +22,7 @@ class Convenio(models.Model): """ Modelo que representa um convênio do Interlegis com uma Casa Legislativa. - Uma Casa Legislativa pode não ter um convênio e sim + Uma Casa Legislativa pode não ter um convênio e sim apenas uma adesão com o Interlegis, isto é, não tem compromissos direto com o Interlegis apenas um pacto de colaboração entre as partes @@ -100,8 +100,8 @@ class Convenio(models.Model): equipada = models.BooleanField() def save(self, *args, **kwargs): - self.conveniada = self.data_retorno_assinatura != None - self.equipada = self.data_termo_aceite != None + self.conveniada = self.data_retorno_assinatura is not None + self.equipada = self.data_termo_aceite is not None super(Convenio, self).save(*args, **kwargs) class Meta: @@ -110,7 +110,7 @@ class Convenio(models.Model): verbose_name = u'convênio' def __unicode__(self): - if self.data_retorno_assinatura != None: + if self.data_retorno_assinatura is not None: return u"Convênio nº %s - projeto %s, em %s" % (self.num_convenio, self.projeto.sigla, self.data_retorno_assinatura) else: return u"Adesão ao projeto %s, em %s" % (self.projeto.sigla, self.data_adesao) diff --git a/sigi/apps/convenios/reports.py b/sigi/apps/convenios/reports.py index 74fabf2..f314536 100644 --- a/sigi/apps/convenios/reports.py +++ b/sigi/apps/convenios/reports.py @@ -111,7 +111,7 @@ class ConvenioReport(ReportDefault): attribute_name='data_adesao', left=label_left[2] * cm, get_value=lambda instance: - instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao != None else '-' + instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao is not None else '-' ), ObjectValue( attribute_name='num_convenio', @@ -121,19 +121,19 @@ class ConvenioReport(ReportDefault): attribute_name='data_retorno_assinatura', left=label_left[4] * cm, get_value=lambda instance: - instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura != None else '-' + instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura is not None else '-' ), ObjectValue( attribute_name='data_pub_diario', left=label_left[5] * cm, get_value=lambda instance: - instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario != None else '-' + instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario is not None else '-' ), ObjectValue( attribute_name='data_termo_aceite', left=label_left[6] * cm, get_value=lambda instance: - instance.data_termo_aceite.strftime('%d/%m/%Y') if instance.data_termo_aceite != None else '-' + instance.data_termo_aceite.strftime('%d/%m/%Y') if instance.data_termo_aceite is not None else '-' ), ObjectValue( attribute_name='projeto.sigla', @@ -225,7 +225,7 @@ class ConvenioReportSemAceite(ConvenioReport): attribute_name='data_adesao', left=label_left[3] * cm, get_value=lambda instance: - instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao != None else '-' + instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao is not None else '-' ), ObjectValue( attribute_name='num_convenio', @@ -235,13 +235,13 @@ class ConvenioReportSemAceite(ConvenioReport): attribute_name='data_retorno_assinatura', left=label_left[5] * cm, get_value=lambda instance: - instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura != None else '-' + instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura is not None else '-' ), ObjectValue( attribute_name='data_pub_diario', left=label_left[6] * cm, get_value=lambda instance: - instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario != None else '-' + instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario is not None else '-' ), ObjectValue( attribute_name='projeto.sigla', diff --git a/sigi/apps/convenios/views.py b/sigi/apps/convenios/views.py index aa93b0a..b29b1cc 100644 --- a/sigi/apps/convenios/views.py +++ b/sigi/apps/convenios/views.py @@ -62,7 +62,7 @@ def carrinhoOrGet_for_qs(request): """ Verifica se existe convênios na sessão se não verifica get e retorna qs correspondente. """ - if request.session.has_key('carrinho_convenios'): + if 'carrinho_convenios' in request.session: ids = request.session['carrinho_convenios'] qs = Convenio.objects.filter(pk__in=ids) else: @@ -76,7 +76,7 @@ def carrinhoOrGet_for_qs(request): def adicionar_convenios_carrinho(request, queryset=None, id=None): if request.method == 'POST': ids_selecionados = request.POST.getlist('_selected_action') - if not request.session.has_key('carrinho_convenios'): + if 'carrinho_convenios' not in request.session: request.session['carrinho_convenios'] = ids_selecionados else: lista = request.session['carrinho_convenios'] @@ -88,7 +88,7 @@ def adicionar_convenios_carrinho(request, queryset=None, id=None): def excluir_carrinho(request): - if request.session.has_key('carrinho_convenios'): + if 'carrinho_convenios' in request.session: del request.session['carrinho_convenios'] return HttpResponseRedirect('.') @@ -96,7 +96,7 @@ def excluir_carrinho(request): def deleta_itens_carrinho(request): if request.method == 'POST': ids_selecionados = request.POST.getlist('_selected_action') - if request.session.has_key('carrinho_convenios'): + if 'carrinho_convenios' in request.session: lista = request.session['carrinho_convenios'] for item in ids_selecionados: lista.remove(item) @@ -128,7 +128,7 @@ def visualizar_carrinho(request): except (EmptyPage, InvalidPage): paginas = paginator.page(paginator.num_pages) - carrinhoIsEmpty = not(request.session.has_key('carrinho_convenios')) + carrinhoIsEmpty = not('carrinho_convenios' in request.session) return render_to_response( 'convenios/carrinho.html', @@ -155,9 +155,9 @@ def report(request, id=None): data_aceite_has = '' report = None if request.POST: - if request.POST.has_key('filtro_casa'): + if 'filtro_casa' in request.POST: tipo = request.POST['filtro_casa'] - if request.POST.has_key('data_aceite'): + if 'data_aceite' in request.POST: data_aceite_has = request.POST['data_aceite'] # Verifica filtro se é por Assembleia if tipo == 'al': @@ -247,7 +247,7 @@ def casas_estado_to_tabela(casas, convenios, regiao): def report_regiao(request, regiao='NE'): if request.POST: - if request.POST.has_key('regiao'): + if 'regiao' in request.POST: regiao = request.POST['regiao'] REGIAO_CHOICES = { diff --git a/sigi/apps/diagnosticos/views.py b/sigi/apps/diagnosticos/views.py index 21f01d8..342e517 100644 --- a/sigi/apps/diagnosticos/views.py +++ b/sigi/apps/diagnosticos/views.py @@ -203,7 +203,7 @@ def categoria_contatos(request, id_diagnostico): and form_telefones.fields['numero'].initial is None): if Telefone.objects.filter(pk=form_telefones.fields['id'].initial).exists(): Telefone.objects.get(pk=form_telefones.fields['id'].initial).delete() - if not resposta['fones'].has_key(form.prefix): + if form.prefix not in resposta['fones']: resposta['fones'][form.prefix] = '' resposta['fones'][form.prefix] += u'

O telefone %s %s foi excluído da base de dados

' % ( form_telefones.instance.get_tipo_display(), form_telefones.instance.numero) diff --git a/sigi/apps/mesas/admin.py b/sigi/apps/mesas/admin.py index 3e8a5a4..5c23d31 100644 --- a/sigi/apps/mesas/admin.py +++ b/sigi/apps/mesas/admin.py @@ -33,7 +33,7 @@ class LegislaturaAdmin(admin.ModelAdmin): def response_change(self, request, obj): response = super(LegislaturaAdmin, self).response_change(request, obj) - if request.POST.has_key("_popup"): + if "_popup" in request.POST: response = HttpResponse('' % # escape() calls force_unicode. (escape(obj.pk), escapejs(obj))) diff --git a/sigi/apps/metas/views.py b/sigi/apps/metas/views.py index 17c8e06..d712e97 100644 --- a/sigi/apps/metas/views.py +++ b/sigi/apps/metas/views.py @@ -21,6 +21,7 @@ from sigi.apps.casas.models import CasaLegislativa from sigi.apps.utils import to_ascii from sigi.apps.financeiro.models import Desembolso from sigi.apps.metas.templatetags.mapa_tags import descricao_servicos +from functools import reduce JSON_FILE_NAME = os.path.join(MEDIA_ROOT, 'apps/metas/map_data.json') @@ -149,7 +150,7 @@ def map_sum(request): result = {} for uf in UnidadeFederativa.objects.filter(Q(regiao__in=param['regioes']) | Q(sigla__in=param['estados'])).order_by('regiao', 'nome'): - if not result.has_key(uf.regiao): + if uf.regiao not in result: result[uf.regiao] = {'nome': uf.get_regiao_display(), 'ufs': {}, 'servicos': tot_servicos.copy(), 'convenios': tot_projetos.copy(), 'equipadas': tot_projetos.copy(), 'diagnosticos': tot_diagnosticos.copy()} @@ -292,7 +293,7 @@ def gera_map_data_file(cronjob=False): continue # Salta essa casa, pois ela não tem nada com o Interlegis - if not casas.has_key(c.pk): + if c.pk not in casas: casa = { 'nome': c.nome + ', ' + c.municipio.uf.sigla, 'icone': '/static/img/' + 'mapmarker' + '.png', diff --git a/sigi/apps/parlamentares/admin.py b/sigi/apps/parlamentares/admin.py index 00cc264..54a3945 100644 --- a/sigi/apps/parlamentares/admin.py +++ b/sigi/apps/parlamentares/admin.py @@ -56,7 +56,7 @@ class ParlamentarAdmin(admin.ModelAdmin): 'pagina_web',) def adiciona_parlamentar(self, request, queryset): - if request.session.has_key('carrinho_parlametar'): + if 'carrinho_parlametar' in request.session: q1 = len(request.session['carrinho_parlamentar']) else: q1 = 0 diff --git a/sigi/apps/parlamentares/reports.py b/sigi/apps/parlamentares/reports.py index 3859175..dbecc94 100644 --- a/sigi/apps/parlamentares/reports.py +++ b/sigi/apps/parlamentares/reports.py @@ -525,19 +525,19 @@ class InfoCasaLegislativa(ReportDefault): ObjectValue(attribute_name='num_processo_sf', left=convenio_left[2] * cm), ObjectValue(attribute_name='data_adesao', left=convenio_left[3] * cm, get_value=lambda instance: - instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao != None else '-' + instance.data_adesao.strftime('%d/%m/%Y') if instance.data_adesao is not None else '-' ), ObjectValue(attribute_name='data_retorno_assinatura', left=convenio_left[4] * cm, get_value=lambda instance: - instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura != None else '-' + instance.data_retorno_assinatura.strftime('%d/%m/%Y') if instance.data_retorno_assinatura is not None else '-' ), ObjectValue(attribute_name='data_termo_aceite', left=convenio_left[5] * cm, get_value=lambda instance: - instance.data_termo_aceite.strftime('%d/%m/%Y') if instance.data_termo_aceite != None else '-' + instance.data_termo_aceite.strftime('%d/%m/%Y') if instance.data_termo_aceite is not None else '-' ), ObjectValue(attribute_name='data_pub_diario', left=convenio_left[6] * cm, get_value=lambda instance: - instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario != None else '-' + instance.data_pub_diario.strftime('%d/%m/%Y') if instance.data_pub_diario is not None else '-' ), ], #borders = {'all':True}, diff --git a/sigi/apps/parlamentares/views.py b/sigi/apps/parlamentares/views.py index 015034b..a9ba2fc 100644 --- a/sigi/apps/parlamentares/views.py +++ b/sigi/apps/parlamentares/views.py @@ -21,7 +21,7 @@ from geraldo.generators import PDFGenerator def adicionar_parlamentar_carrinho(request, queryset=None, id=None): if request.method == 'POST': ids_selecionados = request.POST.getlist('_selected_action') - if not request.session.has_key('carrinho_parlametar'): + if 'carrinho_parlametar' not in request.session: request.session['carrinho_parlamentar'] = ids_selecionados else: lista = request.session['carrinho_parlamentar'] @@ -52,7 +52,7 @@ def visualizar_carrinho(request): except (EmptyPage, InvalidPage): paginas = paginator.page(paginator.num_pages) - carrinhoIsEmpty = not(request.session.has_key('carrinho_parlamentares')) + carrinhoIsEmpty = not('carrinho_parlamentares' in request.session) return render_to_response('parlamentares/carrinho.html', {'MEDIA_URL': settings.MEDIA_URL, @@ -66,7 +66,7 @@ def carrinhoOrGet_for_qs(request): """ Verifica se existe parlamentares na sessão se não verifica get e retorna qs correspondente. """ - if request.session.has_key('carrinho_parlamentar'): + if 'carrinho_parlamentar' in request.session: ids = request.session['carrinho_parlamentar'] qs = Parlamentar.objects.filter(pk__in=ids) else: @@ -109,7 +109,7 @@ def deleta_itens_carrinho(request): """ if request.method == 'POST': ids_selecionados = request.POST.getlist('_selected_action') - if request.session.has_key('carrinho_parlamentar'): + if 'carrinho_parlamentar' in request.session: lista = request.session['carrinho_parlamentar'] for item in ids_selecionados: lista.remove(item) @@ -127,7 +127,7 @@ def labels_report(request, id=None, formato='3x9_etiqueta'): """ if request.POST: - if request.POST.has_key('tipo_etiqueta'): + if 'tipo_etiqueta' in request.POST: tipo = request.POST['tipo_etiqueta'] if id: diff --git a/sigi/apps/servicos/admin.py b/sigi/apps/servicos/admin.py index 467b360..f111f2f 100644 --- a/sigi/apps/servicos/admin.py +++ b/sigi/apps/servicos/admin.py @@ -30,7 +30,7 @@ class ServicoFormAdmin(ModelForm): if self.instance.casa_legislativa_id: id_casa = self.instance.casa_legislativa_id - elif kwargs.has_key('initial') and kwargs['initial'].has_key('id_casa'): + elif 'initial' in kwargs and 'id_casa' in kwargs['initial']: id_casa = kwargs['initial']['id_casa'] self.instance.casa_legislativa_id = id_casa else: @@ -131,10 +131,10 @@ class ServicoAdmin(admin.ModelAdmin): opts = obj._meta msg = _('The %(name)s "%(obj)s" was added successfully.') % {'name': force_unicode(opts.verbose_name), 'obj': force_unicode(obj)} - if request.POST.has_key("_addanother"): + if "_addanother" in request.POST: self.message_user(request, msg + ' ' + (_("You may add another %s below.") % force_unicode(opts.verbose_name))) return HttpResponseRedirect(request.path + '?id_casa=%s' % (obj.casa_legislativa.id,)) - elif request.POST.has_key("_save"): + elif "_save" in request.POST: self.message_user(request, msg) return HttpResponseRedirect(reverse('admin:servicos_casaatendida_change', args=[obj.casa_legislativa.id])) @@ -144,10 +144,10 @@ class ServicoAdmin(admin.ModelAdmin): opts = obj._meta msg = _('The %(name)s "%(obj)s" was changed successfully.') % {'name': force_unicode(opts.verbose_name), 'obj': force_unicode(obj)} - if request.POST.has_key("_addanother"): + if "_addanother" in request.POST: self.message_user(request, msg + ' ' + (_("You may add another %s below.") % force_unicode(opts.verbose_name))) return HttpResponseRedirect("../add/?id_casa=%s" % (obj.casa_legislativa.id,)) - elif request.POST.has_key("_save"): + elif "_save" in request.POST: self.message_user(request, msg) return HttpResponseRedirect(reverse('admin:servicos_casaatendida_change', args=[obj.casa_legislativa.id])) diff --git a/sigi/apps/servidores/management/commands/migra.py b/sigi/apps/servidores/management/commands/migra.py index daa87b2..9802456 100644 --- a/sigi/apps/servidores/management/commands/migra.py +++ b/sigi/apps/servidores/management/commands/migra.py @@ -100,7 +100,7 @@ class Command(BaseCommand): user=user, nome_completo="%s %s" % (user.first_name, user.last_name) ) - except MigrationError, e: + except MigrationError as e: print ", ".join(row) continue diff --git a/sigi/settings/__init__.py b/sigi/settings/__init__.py index aa5057f..ce3e479 100644 --- a/sigi/settings/__init__.py +++ b/sigi/settings/__init__.py @@ -1,7 +1,7 @@ try: - from prod import * + from .prod import * except ImportError: from warnings import warn msg = "You don't have a production settings file, using development settings." warn(msg, category=ImportWarning) - from dev import * + from .dev import * diff --git a/sigi/settings/dev.py b/sigi/settings/dev.py index c9152e3..df2b8bb 100644 --- a/sigi/settings/dev.py +++ b/sigi/settings/dev.py @@ -1,4 +1,4 @@ -from base import * +from .base import * # SECURITY WARNING: keep the secret key used in production secret!