WIP: prepare migration (remove zope context)
This commit is contained in:
parent
5e8c837fb2
commit
77f68d1c4c
@ -25,6 +25,6 @@
|
|||||||
#
|
#
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
"""ScoDoc core
|
"""ScoDoc core package
|
||||||
"""
|
"""
|
||||||
from app.ScoDoc import sco_core
|
# from app.scodoc import sco_core
|
||||||
|
@ -1,15 +1,19 @@
|
|||||||
# -*- mode: python -*-
|
# -*- mode: python -*-
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
"""essai: ceci serait un module ScoDoc/sco_xxx.py
|
"""essai: ceci serait un module scodoc/sco_xxx.py
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import types
|
import types
|
||||||
|
|
||||||
import sco_utils as scu
|
import sco_utils as scu
|
||||||
|
|
||||||
|
|
||||||
def sco_get_version(context, REQUEST=None):
|
def sco_get_version(context, REQUEST=None):
|
||||||
"""Une fonction typique de ScoDoc7
|
"""Une fonction typique de ScoDoc7"""
|
||||||
"""
|
|
||||||
return """<html><body><p>%s</p></body></html>""" % scu.SCOVERSION
|
return """<html><body><p>%s</p></body></html>""" % scu.SCOVERSION
|
||||||
|
|
||||||
|
|
||||||
|
def test_refactor(context, x=1):
|
||||||
|
x = context.toto()
|
||||||
|
y = ("context=" + context.module_is_locked("alpha")) + "23"
|
||||||
|
@ -20,7 +20,7 @@ from app.auth.models import Permission
|
|||||||
from app.views import notes_bp as bp
|
from app.views import notes_bp as bp
|
||||||
|
|
||||||
# import sco_core deviendra:
|
# import sco_core deviendra:
|
||||||
from app.ScoDoc import sco_core
|
from app.scodoc import sco_core
|
||||||
|
|
||||||
context = ScoDoc7Context(globals())
|
context = ScoDoc7Context(globals())
|
||||||
|
|
||||||
|
@ -30,6 +30,7 @@ Module notes: issu de ScoDoc7 / ZNotes.py
|
|||||||
|
|
||||||
Emmanuel Viennet, 2021
|
Emmanuel Viennet, 2021
|
||||||
"""
|
"""
|
||||||
|
import sys
|
||||||
import time
|
import time
|
||||||
import datetime
|
import datetime
|
||||||
import jaxml
|
import jaxml
|
||||||
@ -53,81 +54,81 @@ from app.views import notes_bp as bp
|
|||||||
|
|
||||||
# ---------------
|
# ---------------
|
||||||
|
|
||||||
from app.ScoDoc import sco_utils as scu
|
from app.scodoc import sco_utils as scu
|
||||||
from app.ScoDoc import notesdb as ndb
|
from app.scodoc import notesdb as ndb
|
||||||
from app.ScoDoc.notes_log import log, sendAlarm
|
from app.scodoc.notes_log import log, sendAlarm
|
||||||
|
|
||||||
from app.ScoDoc import scolog
|
from app.scodoc import scolog
|
||||||
from app.ScoDoc.scolog import logdb
|
from app.scodoc.scolog import logdb
|
||||||
|
|
||||||
from app.ScoDoc.sco_exceptions import (
|
from app.scodoc.sco_exceptions import (
|
||||||
ScoValueError,
|
ScoValueError,
|
||||||
ScoLockedFormError,
|
ScoLockedFormError,
|
||||||
ScoGenError,
|
ScoGenError,
|
||||||
AccessDenied,
|
AccessDenied,
|
||||||
)
|
)
|
||||||
from app.ScoDoc.sco_permissions import Permission, ScoImplement
|
from app.scodoc.sco_permissions import Permission, ScoImplement
|
||||||
from app.ScoDoc.TrivialFormulator import TrivialFormulator
|
from app.scodoc.TrivialFormulator import TrivialFormulator
|
||||||
import app.ScoDoc.htmlutils as htmlutils
|
import app.scodoc.htmlutils as htmlutils
|
||||||
import app.ScoDoc.sco_excel as sco_excel
|
import app.scodoc.sco_excel as sco_excel
|
||||||
|
|
||||||
from app.ScoDoc.gen_tables import GenTable
|
from app.scodoc.gen_tables import GenTable
|
||||||
from app.ScoDoc import sco_cache as sco_cache
|
from app.scodoc import sco_cache as sco_cache
|
||||||
from app.ScoDoc import scolars as scolars
|
from app.scodoc import scolars as scolars
|
||||||
from app.ScoDoc import sco_news as sco_news
|
from app.scodoc import sco_news as sco_news
|
||||||
from app.ScoDoc.sco_news import NEWS_INSCR, NEWS_NOTE, NEWS_FORM, NEWS_SEM, NEWS_MISC
|
from app.scodoc.sco_news import NEWS_INSCR, NEWS_NOTE, NEWS_FORM, NEWS_SEM, NEWS_MISC
|
||||||
|
|
||||||
from app.ScoDoc import sco_formsemestre as sco_formsemestre
|
from app.scodoc import sco_formsemestre as sco_formsemestre
|
||||||
from app.ScoDoc import sco_formsemestre_edit as sco_formsemestre_edit
|
from app.scodoc import sco_formsemestre_edit as sco_formsemestre_edit
|
||||||
from app.ScoDoc import sco_formsemestre_status as sco_formsemestre_status
|
from app.scodoc import sco_formsemestre_status as sco_formsemestre_status
|
||||||
from app.ScoDoc import sco_formsemestre_inscriptions as sco_formsemestre_inscriptions
|
from app.scodoc import sco_formsemestre_inscriptions as sco_formsemestre_inscriptions
|
||||||
from app.ScoDoc import sco_formsemestre_custommenu as sco_formsemestre_custommenu
|
from app.scodoc import sco_formsemestre_custommenu as sco_formsemestre_custommenu
|
||||||
from app.ScoDoc import sco_moduleimpl as sco_moduleimpl
|
from app.scodoc import sco_moduleimpl as sco_moduleimpl
|
||||||
from app.ScoDoc import sco_moduleimpl_status as sco_moduleimpl_status
|
from app.scodoc import sco_moduleimpl_status as sco_moduleimpl_status
|
||||||
from app.ScoDoc import sco_moduleimpl_inscriptions as sco_moduleimpl_inscriptions
|
from app.scodoc import sco_moduleimpl_inscriptions as sco_moduleimpl_inscriptions
|
||||||
from app.ScoDoc import sco_evaluations as sco_evaluations
|
from app.scodoc import sco_evaluations as sco_evaluations
|
||||||
from app.ScoDoc import sco_groups as sco_groups
|
from app.scodoc import sco_groups as sco_groups
|
||||||
from app.ScoDoc import sco_edit_ue as sco_edit_ue
|
from app.scodoc import sco_edit_ue as sco_edit_ue
|
||||||
from app.ScoDoc import sco_edit_formation as sco_edit_formation
|
from app.scodoc import sco_edit_formation as sco_edit_formation
|
||||||
from app.ScoDoc import sco_edit_matiere as sco_edit_matiere
|
from app.scodoc import sco_edit_matiere as sco_edit_matiere
|
||||||
from app.ScoDoc import sco_edit_module as sco_edit_module
|
from app.scodoc import sco_edit_module as sco_edit_module
|
||||||
from app.ScoDoc import sco_tag_module as sco_tag_module
|
from app.scodoc import sco_tag_module as sco_tag_module
|
||||||
from app.ScoDoc import sco_bulletins as sco_bulletins
|
from app.scodoc import sco_bulletins as sco_bulletins
|
||||||
from app.ScoDoc import sco_bulletins_pdf as sco_bulletins_pdf
|
from app.scodoc import sco_bulletins_pdf as sco_bulletins_pdf
|
||||||
from app.ScoDoc import sco_compute_moy as sco_compute_moy
|
from app.scodoc import sco_compute_moy as sco_compute_moy
|
||||||
from app.ScoDoc import sco_recapcomplet as sco_recapcomplet
|
from app.scodoc import sco_recapcomplet as sco_recapcomplet
|
||||||
from app.ScoDoc import sco_liste_notes as sco_liste_notes
|
from app.scodoc import sco_liste_notes as sco_liste_notes
|
||||||
from app.ScoDoc import sco_saisie_notes as sco_saisie_notes
|
from app.scodoc import sco_saisie_notes as sco_saisie_notes
|
||||||
from app.ScoDoc import sco_placement as sco_placement
|
from app.scodoc import sco_placement as sco_placement
|
||||||
from app.ScoDoc import sco_undo_notes as sco_undo_notes
|
from app.scodoc import sco_undo_notes as sco_undo_notes
|
||||||
from app.ScoDoc import sco_formations as sco_formations
|
from app.scodoc import sco_formations as sco_formations
|
||||||
from app.ScoDoc import sco_report as sco_report
|
from app.scodoc import sco_report as sco_report
|
||||||
from app.ScoDoc import sco_lycee as sco_lycee
|
from app.scodoc import sco_lycee as sco_lycee
|
||||||
from app.ScoDoc import sco_poursuite_dut as sco_poursuite_dut
|
from app.scodoc import sco_poursuite_dut as sco_poursuite_dut
|
||||||
from app.ScoDoc import pe_view as pe_view
|
from app.scodoc import pe_view as pe_view
|
||||||
from app.ScoDoc import sco_debouche as sco_debouche
|
from app.scodoc import sco_debouche as sco_debouche
|
||||||
from app.ScoDoc import sco_ue_external as sco_ue_external
|
from app.scodoc import sco_ue_external as sco_ue_external
|
||||||
from app.ScoDoc import sco_cost_formation as sco_cost_formation
|
from app.scodoc import sco_cost_formation as sco_cost_formation
|
||||||
from app.ScoDoc import sco_formsemestre_validation as sco_formsemestre_validation
|
from app.scodoc import sco_formsemestre_validation as sco_formsemestre_validation
|
||||||
from app.ScoDoc import sco_parcours_dut as sco_parcours_dut
|
from app.scodoc import sco_parcours_dut as sco_parcours_dut
|
||||||
from app.ScoDoc import sco_codes_parcours as sco_codes_parcours
|
from app.scodoc import sco_codes_parcours as sco_codes_parcours
|
||||||
from app.ScoDoc import sco_pvjury as sco_pvjury
|
from app.scodoc import sco_pvjury as sco_pvjury
|
||||||
from app.ScoDoc import sco_pvpdf as sco_pvpdf
|
from app.scodoc import sco_pvpdf as sco_pvpdf
|
||||||
from app.ScoDoc import sco_prepajury as sco_prepajury
|
from app.scodoc import sco_prepajury as sco_prepajury
|
||||||
from app.ScoDoc import sco_inscr_passage as sco_inscr_passage
|
from app.scodoc import sco_inscr_passage as sco_inscr_passage
|
||||||
from app.ScoDoc import sco_synchro_etuds as sco_synchro_etuds
|
from app.scodoc import sco_synchro_etuds as sco_synchro_etuds
|
||||||
from app.ScoDoc import sco_archives as sco_archives
|
from app.scodoc import sco_archives as sco_archives
|
||||||
from app.ScoDoc import sco_apogee_csv as sco_apogee_csv
|
from app.scodoc import sco_apogee_csv as sco_apogee_csv
|
||||||
from app.ScoDoc import sco_etape_apogee_view as sco_etape_apogee_view
|
from app.scodoc import sco_etape_apogee_view as sco_etape_apogee_view
|
||||||
from app.ScoDoc import sco_apogee_compare as sco_apogee_compare
|
from app.scodoc import sco_apogee_compare as sco_apogee_compare
|
||||||
from app.ScoDoc import sco_semset as sco_semset
|
from app.scodoc import sco_semset as sco_semset
|
||||||
from app.ScoDoc import sco_export_results as sco_export_results
|
from app.scodoc import sco_export_results as sco_export_results
|
||||||
from app.ScoDoc import sco_formsemestre_exterieurs as sco_formsemestre_exterieurs
|
from app.scodoc import sco_formsemestre_exterieurs as sco_formsemestre_exterieurs
|
||||||
|
|
||||||
from app.ScoDoc.sco_pdf import PDFLOCK
|
from app.scodoc.sco_pdf import PDFLOCK
|
||||||
from app.ScoDoc import notes_table as notes_table
|
from app.scodoc import notes_table as notes_table
|
||||||
from app.ScoDoc.notes_table import NOTES_CACHE_INST, CacheNotesTable
|
from app.scodoc.notes_table import NOTES_CACHE_INST, CacheNotesTable
|
||||||
import app.ScoDoc.VERSION as VERSION
|
import app.scodoc.VERSION as VERSION
|
||||||
|
|
||||||
context = ScoDoc7Context(globals())
|
context = ScoDoc7Context(globals())
|
||||||
|
|
||||||
@ -136,9 +137,9 @@ def sco_publish(route, function, permission):
|
|||||||
"""Declare a route for a python function,
|
"""Declare a route for a python function,
|
||||||
protected by permission and called following ScoDoc 7 Zope standards.
|
protected by permission and called following ScoDoc 7 Zope standards.
|
||||||
"""
|
"""
|
||||||
return bp.route(route)(
|
# f =
|
||||||
permission_required(permission)(scodoc7func(context)(function))
|
bp.route(route)(permission_required(permission)(scodoc7func(context)(function)))
|
||||||
)
|
# setattr(sys.modules[__name__], f.__name__, f)
|
||||||
|
|
||||||
|
|
||||||
# --------------------- Quelques essais élémentaires:
|
# --------------------- Quelques essais élémentaires:
|
||||||
@ -203,8 +204,8 @@ def _inval_cache(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/clearcache")
|
@bp.route("/clearcache")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def clearcache(context, REQUEST=None):
|
def clearcache(context, REQUEST=None):
|
||||||
"Efface les caches de notes (utile pendant developpement slt)"
|
"Efface les caches de notes (utile pendant developpement slt)"
|
||||||
log("*** clearcache request")
|
log("*** clearcache request")
|
||||||
@ -257,13 +258,13 @@ sco_publish(
|
|||||||
|
|
||||||
# controle d'acces specifique pour dir. etud:
|
# controle d'acces specifique pour dir. etud:
|
||||||
sco_publish(
|
sco_publish(
|
||||||
"formsemestre_editwithmodules",
|
"/formsemestre_editwithmodules",
|
||||||
sco_formsemestre_edit.formsemestre_editwithmodules,
|
sco_formsemestre_edit.formsemestre_editwithmodules,
|
||||||
Permission.ScoView,
|
Permission.ScoView,
|
||||||
)
|
)
|
||||||
|
|
||||||
sco_publish(
|
sco_publish(
|
||||||
"formsemestre_clone",
|
"/formsemestre_clone",
|
||||||
sco_formsemestre_edit.formsemestre_clone,
|
sco_formsemestre_edit.formsemestre_clone,
|
||||||
Permission.ScoImplement,
|
Permission.ScoImplement,
|
||||||
)
|
)
|
||||||
@ -401,8 +402,8 @@ sco_publish(
|
|||||||
#
|
#
|
||||||
@bp.route("/")
|
@bp.route("/")
|
||||||
@bp.route("/index_html")
|
@bp.route("/index_html")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def index_html(context, REQUEST=None):
|
def index_html(context, REQUEST=None):
|
||||||
"Page accueil formations"
|
"Page accueil formations"
|
||||||
|
|
||||||
@ -454,8 +455,8 @@ _formationEditor = ndb.EditableTable(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formation_create")
|
@bp.route("/do_formation_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formation_create(context, args, REQUEST):
|
def do_formation_create(context, args, REQUEST):
|
||||||
"create a formation"
|
"create a formation"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -483,8 +484,8 @@ def do_formation_create(context, args, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formation_delete")
|
@bp.route("/do_formation_delete")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formation_delete(context, oid, REQUEST):
|
def do_formation_delete(context, oid, REQUEST):
|
||||||
"""delete a formation (and all its UE, matieres, modules)
|
"""delete a formation (and all its UE, matieres, modules)
|
||||||
XXX delete all ues, will break if there are validations ! USE WITH CARE !
|
XXX delete all ues, will break if there are validations ! USE WITH CARE !
|
||||||
@ -511,8 +512,8 @@ def do_formation_delete(context, oid, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formation_list")
|
@bp.route("/formation_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_list(context, format=None, REQUEST=None, formation_id=None, args={}):
|
def formation_list(context, format=None, REQUEST=None, formation_id=None, args={}):
|
||||||
"""List formation(s) with given id, or matching args
|
"""List formation(s) with given id, or matching args
|
||||||
(when args is given, formation_id is ignored).
|
(when args is given, formation_id is ignored).
|
||||||
@ -530,8 +531,8 @@ def formation_list(context, format=None, REQUEST=None, formation_id=None, args={
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formation_export")
|
@bp.route("/formation_export")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_export(
|
def formation_export(
|
||||||
context, formation_id, export_ids=False, format=None, REQUEST=None
|
context, formation_id, export_ids=False, format=None, REQUEST=None
|
||||||
):
|
):
|
||||||
@ -542,8 +543,8 @@ def formation_export(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formation_import_xml")
|
@bp.route("/formation_import_xml")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_import_xml(context, file, REQUEST):
|
def formation_import_xml(context, file, REQUEST):
|
||||||
"import d'une formation en XML"
|
"import d'une formation en XML"
|
||||||
log("formation_import_xml")
|
log("formation_import_xml")
|
||||||
@ -552,8 +553,8 @@ def formation_import_xml(context, file, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formation_import_xml_form")
|
@bp.route("/formation_import_xml_form")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_import_xml_form(context, REQUEST):
|
def formation_import_xml_form(context, REQUEST):
|
||||||
"form import d'une formation en XML"
|
"form import d'une formation en XML"
|
||||||
H = [
|
H = [
|
||||||
@ -588,8 +589,8 @@ def formation_import_xml_form(context, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formation_create_new_version")
|
@bp.route("/formation_create_new_version")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_create_new_version(context, formation_id, redirect=True, REQUEST=None):
|
def formation_create_new_version(context, formation_id, redirect=True, REQUEST=None):
|
||||||
"duplicate formation, with new version number"
|
"duplicate formation, with new version number"
|
||||||
xml = sco_formations.formation_export(
|
xml = sco_formations.formation_export(
|
||||||
@ -643,8 +644,8 @@ _ueEditor = ndb.EditableTable(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_ue_create")
|
@bp.route("/do_ue_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_ue_create(context, args, REQUEST):
|
def do_ue_create(context, args, REQUEST):
|
||||||
"create an ue"
|
"create an ue"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -738,8 +739,8 @@ def _do_ue_delete(context, ue_id, delete_validations=False, REQUEST=None, force=
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_ue_list")
|
@bp.route("/do_ue_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_ue_list(context, *args, **kw):
|
def do_ue_list(context, *args, **kw):
|
||||||
"list UEs"
|
"list UEs"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -757,8 +758,8 @@ _matiereEditor = ndb.EditableTable(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_matiere_create")
|
@bp.route("/do_matiere_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_matiere_create(context, args, REQUEST):
|
def do_matiere_create(context, args, REQUEST):
|
||||||
"create a matiere"
|
"create a matiere"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -780,8 +781,8 @@ def do_matiere_create(context, args, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_matiere_delete")
|
@bp.route("/do_matiere_delete")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_matiere_delete(context, oid, REQUEST):
|
def do_matiere_delete(context, oid, REQUEST):
|
||||||
"delete matiere and attached modules"
|
"delete matiere and attached modules"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -813,8 +814,8 @@ def do_matiere_delete(context, oid, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_matiere_list")
|
@bp.route("/do_matiere_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_matiere_list(context, *args, **kw):
|
def do_matiere_list(context, *args, **kw):
|
||||||
"list matieres"
|
"list matieres"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -822,8 +823,8 @@ def do_matiere_list(context, *args, **kw):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_matiere_edit")
|
@bp.route("/do_matiere_edit")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_matiere_edit(context, *args, **kw):
|
def do_matiere_edit(context, *args, **kw):
|
||||||
"edit a matiere"
|
"edit a matiere"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -837,8 +838,8 @@ def do_matiere_edit(context, *args, **kw):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_matiere_formation_id")
|
@bp.route("/do_matiere_formation_id")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_matiere_formation_id(context, matiere_id):
|
def do_matiere_formation_id(context, matiere_id):
|
||||||
"get formation_id from matiere"
|
"get formation_id from matiere"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -887,8 +888,8 @@ _moduleEditor = ndb.EditableTable(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_module_create")
|
@bp.route("/do_module_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_module_create(context, args, REQUEST):
|
def do_module_create(context, args, REQUEST):
|
||||||
"create a module"
|
"create a module"
|
||||||
# create
|
# create
|
||||||
@ -908,8 +909,8 @@ def do_module_create(context, args, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_module_delete")
|
@bp.route("/do_module_delete")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_module_delete(context, oid, REQUEST):
|
def do_module_delete(context, oid, REQUEST):
|
||||||
"delete module"
|
"delete module"
|
||||||
mod = context.do_module_list({"module_id": oid})[0]
|
mod = context.do_module_list({"module_id": oid})[0]
|
||||||
@ -943,8 +944,8 @@ def do_module_delete(context, oid, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_module_list")
|
@bp.route("/do_module_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_module_list(context, *args, **kw):
|
def do_module_list(context, *args, **kw):
|
||||||
"list modules"
|
"list modules"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -952,8 +953,8 @@ def do_module_list(context, *args, **kw):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_module_edit")
|
@bp.route("/do_module_edit")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_module_edit(context, val):
|
def do_module_edit(context, val):
|
||||||
"edit a module"
|
"edit a module"
|
||||||
# check
|
# check
|
||||||
@ -979,8 +980,8 @@ def do_module_edit(context, val):
|
|||||||
|
|
||||||
#
|
#
|
||||||
@bp.route("/formation_has_locked_sems")
|
@bp.route("/formation_has_locked_sems")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_has_locked_sems(context, formation_id):
|
def formation_has_locked_sems(context, formation_id):
|
||||||
"True if there is a locked formsemestre in this formation"
|
"True if there is a locked formsemestre in this formation"
|
||||||
sems = sco_formsemestre.do_formsemestre_list(
|
sems = sco_formsemestre.do_formsemestre_list(
|
||||||
@ -990,8 +991,8 @@ def formation_has_locked_sems(context, formation_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formation_count_sems")
|
@bp.route("/formation_count_sems")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formation_count_sems(context, formation_id):
|
def formation_count_sems(context, formation_id):
|
||||||
"Number of formsemestre in this formation (locked or not)"
|
"Number of formsemestre in this formation (locked or not)"
|
||||||
sems = sco_formsemestre.do_formsemestre_list(
|
sems = sco_formsemestre.do_formsemestre_list(
|
||||||
@ -1001,8 +1002,8 @@ def formation_count_sems(context, formation_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/module_count_moduleimpls")
|
@bp.route("/module_count_moduleimpls")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def module_count_moduleimpls(context, module_id):
|
def module_count_moduleimpls(context, module_id):
|
||||||
"Number of moduleimpls using this module"
|
"Number of moduleimpls using this module"
|
||||||
mods = sco_moduleimpl.do_moduleimpl_list(context, module_id=module_id)
|
mods = sco_moduleimpl.do_moduleimpl_list(context, module_id=module_id)
|
||||||
@ -1010,8 +1011,8 @@ def module_count_moduleimpls(context, module_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/module_is_locked")
|
@bp.route("/module_is_locked")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def module_is_locked(context, module_id):
|
def module_is_locked(context, module_id):
|
||||||
"""True if UE should not be modified
|
"""True if UE should not be modified
|
||||||
(used in a locked formsemestre)
|
(used in a locked formsemestre)
|
||||||
@ -1028,8 +1029,8 @@ def module_is_locked(context, module_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/matiere_is_locked")
|
@bp.route("/matiere_is_locked")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def matiere_is_locked(context, matiere_id):
|
def matiere_is_locked(context, matiere_id):
|
||||||
"""True if matiere should not be modified
|
"""True if matiere should not be modified
|
||||||
(contains modules used in a locked formsemestre)
|
(contains modules used in a locked formsemestre)
|
||||||
@ -1046,8 +1047,8 @@ def matiere_is_locked(context, matiere_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/ue_is_locked")
|
@bp.route("/ue_is_locked")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def ue_is_locked(context, ue_id):
|
def ue_is_locked(context, ue_id):
|
||||||
"""True if module should not be modified
|
"""True if module should not be modified
|
||||||
(contains modules used in a locked formsemestre)
|
(contains modules used in a locked formsemestre)
|
||||||
@ -1065,8 +1066,8 @@ def ue_is_locked(context, ue_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/module_move")
|
@bp.route("/module_move")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def module_move(context, module_id, after=0, REQUEST=None, redirect=1):
|
def module_move(context, module_id, after=0, REQUEST=None, redirect=1):
|
||||||
"""Move before/after previous one (decrement/increment numero)"""
|
"""Move before/after previous one (decrement/increment numero)"""
|
||||||
module = context.do_module_list({"module_id": module_id})[0]
|
module = context.do_module_list({"module_id": module_id})[0]
|
||||||
@ -1101,8 +1102,8 @@ def module_move(context, module_id, after=0, REQUEST=None, redirect=1):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/ue_move")
|
@bp.route("/ue_move")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoChangeFormation)
|
@permission_required(Permission.ScoChangeFormation)
|
||||||
|
@scodoc7func(context)
|
||||||
def ue_move(context, ue_id, after=0, REQUEST=None, redirect=1):
|
def ue_move(context, ue_id, after=0, REQUEST=None, redirect=1):
|
||||||
"""Move UE before/after previous one (decrement/increment numero)"""
|
"""Move UE before/after previous one (decrement/increment numero)"""
|
||||||
o = context.do_ue_list({"ue_id": ue_id})[0]
|
o = context.do_ue_list({"ue_id": ue_id})[0]
|
||||||
@ -1138,8 +1139,8 @@ def ue_move(context, ue_id, after=0, REQUEST=None, redirect=1):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_create")
|
@bp.route("/do_formsemestre_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoImplement)
|
@permission_required(Permission.ScoImplement)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_create(context, args, REQUEST, silent=False):
|
def do_formsemestre_create(context, args, REQUEST, silent=False):
|
||||||
"create a formsemestre"
|
"create a formsemestre"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -1176,8 +1177,8 @@ def do_formsemestre_create(context, args, REQUEST, silent=False):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_list")
|
@bp.route("/formsemestre_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_list(
|
def formsemestre_list(
|
||||||
context,
|
context,
|
||||||
format=None,
|
format=None,
|
||||||
@ -1202,8 +1203,8 @@ def formsemestre_list(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/XMLgetFormsemestres")
|
@bp.route("/XMLgetFormsemestres")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def XMLgetFormsemestres(context, etape_apo=None, formsemestre_id=None, REQUEST=None):
|
def XMLgetFormsemestres(context, etape_apo=None, formsemestre_id=None, REQUEST=None):
|
||||||
"""List all formsemestres matching etape, XML format
|
"""List all formsemestres matching etape, XML format
|
||||||
DEPRECATED: use formsemestre_list()
|
DEPRECATED: use formsemestre_list()
|
||||||
@ -1282,8 +1283,8 @@ def _check_access_diretud(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_custommenu_edit")
|
@bp.route("/formsemestre_custommenu_edit")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_custommenu_edit(context, REQUEST, formsemestre_id):
|
def formsemestre_custommenu_edit(context, REQUEST, formsemestre_id):
|
||||||
"Dialogue modif menu"
|
"Dialogue modif menu"
|
||||||
# accessible à tous !
|
# accessible à tous !
|
||||||
@ -1300,8 +1301,8 @@ sco_publish(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/html_sem_header")
|
@bp.route("/html_sem_header")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def html_sem_header(
|
def html_sem_header(
|
||||||
context,
|
context,
|
||||||
REQUEST,
|
REQUEST,
|
||||||
@ -1326,8 +1327,8 @@ def html_sem_header(
|
|||||||
|
|
||||||
# --- dialogue modif enseignants/moduleimpl
|
# --- dialogue modif enseignants/moduleimpl
|
||||||
@bp.route("/edit_enseignants_form")
|
@bp.route("/edit_enseignants_form")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def edit_enseignants_form(context, REQUEST, moduleimpl_id):
|
def edit_enseignants_form(context, REQUEST, moduleimpl_id):
|
||||||
"modif liste enseignants/moduleimpl"
|
"modif liste enseignants/moduleimpl"
|
||||||
M, sem = sco_moduleimpl.can_change_ens(context, REQUEST, moduleimpl_id)
|
M, sem = sco_moduleimpl.can_change_ens(context, REQUEST, moduleimpl_id)
|
||||||
@ -1434,8 +1435,8 @@ def edit_enseignants_form(context, REQUEST, moduleimpl_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/edit_moduleimpl_resp")
|
@bp.route("/edit_moduleimpl_resp")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def edit_moduleimpl_resp(context, REQUEST, moduleimpl_id):
|
def edit_moduleimpl_resp(context, REQUEST, moduleimpl_id):
|
||||||
"""Changement d'un enseignant responsable de module
|
"""Changement d'un enseignant responsable de module
|
||||||
Accessible par Admin et dir des etud si flag resp_can_change_ens
|
Accessible par Admin et dir des etud si flag resp_can_change_ens
|
||||||
@ -1543,8 +1544,8 @@ _expr_help = """<p class="help">Expérimental: formule de calcul de la moyenne %
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/edit_moduleimpl_expr")
|
@bp.route("/edit_moduleimpl_expr")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def edit_moduleimpl_expr(context, REQUEST, moduleimpl_id):
|
def edit_moduleimpl_expr(context, REQUEST, moduleimpl_id):
|
||||||
"""Edition formule calcul moyenne module
|
"""Edition formule calcul moyenne module
|
||||||
Accessible par Admin, dir des etud et responsable module
|
Accessible par Admin, dir des etud et responsable module
|
||||||
@ -1612,8 +1613,8 @@ def edit_moduleimpl_expr(context, REQUEST, moduleimpl_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/view_module_abs")
|
@bp.route("/view_module_abs")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def view_module_abs(context, REQUEST, moduleimpl_id, format="html"):
|
def view_module_abs(context, REQUEST, moduleimpl_id, format="html"):
|
||||||
"""Visualisation des absences a un module"""
|
"""Visualisation des absences a un module"""
|
||||||
M = sco_moduleimpl.do_moduleimpl_withmodule_list(
|
M = sco_moduleimpl.do_moduleimpl_withmodule_list(
|
||||||
@ -1686,8 +1687,8 @@ def view_module_abs(context, REQUEST, moduleimpl_id, format="html"):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/edit_ue_expr")
|
@bp.route("/edit_ue_expr")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def edit_ue_expr(context, REQUEST, formsemestre_id, ue_id):
|
def edit_ue_expr(context, REQUEST, formsemestre_id, ue_id):
|
||||||
"""Edition formule calcul moyenne UE"""
|
"""Edition formule calcul moyenne UE"""
|
||||||
# Check access
|
# Check access
|
||||||
@ -1757,8 +1758,8 @@ def edit_ue_expr(context, REQUEST, formsemestre_id, ue_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_enseignants_list")
|
@bp.route("/formsemestre_enseignants_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_enseignants_list(context, REQUEST, formsemestre_id, format="html"):
|
def formsemestre_enseignants_list(context, REQUEST, formsemestre_id, format="html"):
|
||||||
"""Liste les enseignants intervenants dans le semestre (resp. modules et chargés de TD)
|
"""Liste les enseignants intervenants dans le semestre (resp. modules et chargés de TD)
|
||||||
et indique les absences saisies par chacun.
|
et indique les absences saisies par chacun.
|
||||||
@ -1841,8 +1842,8 @@ def formsemestre_enseignants_list(context, REQUEST, formsemestre_id, format="htm
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/edit_enseignants_form_delete")
|
@bp.route("/edit_enseignants_form_delete")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def edit_enseignants_form_delete(context, REQUEST, moduleimpl_id, ens_id):
|
def edit_enseignants_form_delete(context, REQUEST, moduleimpl_id, ens_id):
|
||||||
"remove ens"
|
"remove ens"
|
||||||
M, _ = sco_moduleimpl.can_change_ens(context, REQUEST, moduleimpl_id)
|
M, _ = sco_moduleimpl.can_change_ens(context, REQUEST, moduleimpl_id)
|
||||||
@ -1870,8 +1871,8 @@ _formsemestre_inscriptionEditor = ndb.EditableTable(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_inscription_create")
|
@bp.route("/do_formsemestre_inscription_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEtudInscrit)
|
@permission_required(Permission.ScoEtudInscrit)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_inscription_create(context, args, REQUEST, method=None):
|
def do_formsemestre_inscription_create(context, args, REQUEST, method=None):
|
||||||
"create a formsemestre_inscription (and sco event)"
|
"create a formsemestre_inscription (and sco event)"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -1914,8 +1915,8 @@ def do_formsemestre_inscription_create(context, args, REQUEST, method=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_inscription_delete")
|
@bp.route("/do_formsemestre_inscription_delete")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoImplement)
|
@permission_required(Permission.ScoImplement)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_inscription_delete(context, oid, formsemestre_id=None):
|
def do_formsemestre_inscription_delete(context, oid, formsemestre_id=None):
|
||||||
"delete formsemestre_inscription"
|
"delete formsemestre_inscription"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -1927,8 +1928,8 @@ def do_formsemestre_inscription_delete(context, oid, formsemestre_id=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_inscription_list")
|
@bp.route("/do_formsemestre_inscription_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_inscription_list(context, *args, **kw):
|
def do_formsemestre_inscription_list(context, *args, **kw):
|
||||||
"list formsemestre_inscriptions"
|
"list formsemestre_inscriptions"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -1936,8 +1937,8 @@ def do_formsemestre_inscription_list(context, *args, **kw):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_inscription_listinscrits")
|
@bp.route("/do_formsemestre_inscription_listinscrits")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_inscription_listinscrits(
|
def do_formsemestre_inscription_listinscrits(
|
||||||
context, formsemestre_id, format=None, REQUEST=None
|
context, formsemestre_id, format=None, REQUEST=None
|
||||||
):
|
):
|
||||||
@ -1954,8 +1955,8 @@ def do_formsemestre_inscription_listinscrits(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_inscription_edit")
|
@bp.route("/do_formsemestre_inscription_edit")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoImplement)
|
@permission_required(Permission.ScoImplement)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_inscription_edit(context, args=None, formsemestre_id=None):
|
def do_formsemestre_inscription_edit(context, args=None, formsemestre_id=None):
|
||||||
"edit a formsemestre_inscription"
|
"edit a formsemestre_inscription"
|
||||||
cnx = context.GetDBConnexion()
|
cnx = context.GetDBConnexion()
|
||||||
@ -1977,8 +1978,8 @@ def get_formsemestre_inscription_cache(context, format=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_desinscription")
|
@bp.route("/formsemestre_desinscription")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoImplement)
|
@permission_required(Permission.ScoImplement)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_desinscription(
|
def formsemestre_desinscription(
|
||||||
context, etudid, formsemestre_id, REQUEST=None, dialog_confirmed=False
|
context, etudid, formsemestre_id, REQUEST=None, dialog_confirmed=False
|
||||||
):
|
):
|
||||||
@ -2055,8 +2056,8 @@ def formsemestre_desinscription(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_desinscription")
|
@bp.route("/do_formsemestre_desinscription")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoImplement)
|
@permission_required(Permission.ScoImplement)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_desinscription(context, etudid, formsemestre_id, REQUEST=None):
|
def do_formsemestre_desinscription(context, etudid, formsemestre_id, REQUEST=None):
|
||||||
"""Désinscription d'un étudiant.
|
"""Désinscription d'un étudiant.
|
||||||
Si semestre extérieur et dernier inscrit, suppression de ce semestre.
|
Si semestre extérieur et dernier inscrit, suppression de ce semestre.
|
||||||
@ -2123,8 +2124,8 @@ def do_formsemestre_desinscription(context, etudid, formsemestre_id, REQUEST=Non
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/etud_desinscrit_ue")
|
@bp.route("/etud_desinscrit_ue")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEtudInscrit)
|
@permission_required(Permission.ScoEtudInscrit)
|
||||||
|
@scodoc7func(context)
|
||||||
def etud_desinscrit_ue(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
def etud_desinscrit_ue(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
||||||
"""Desinscrit l'etudiant de tous les modules de cette UE dans ce semestre."""
|
"""Desinscrit l'etudiant de tous les modules de cette UE dans ce semestre."""
|
||||||
sco_moduleimpl_inscriptions.do_etud_desinscrit_ue(
|
sco_moduleimpl_inscriptions.do_etud_desinscrit_ue(
|
||||||
@ -2138,8 +2139,8 @@ def etud_desinscrit_ue(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/etud_inscrit_ue")
|
@bp.route("/etud_inscrit_ue")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEtudInscrit)
|
@permission_required(Permission.ScoEtudInscrit)
|
||||||
|
@scodoc7func(context)
|
||||||
def etud_inscrit_ue(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
def etud_inscrit_ue(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
||||||
"""Inscrit l'etudiant de tous les modules de cette UE dans ce semestre."""
|
"""Inscrit l'etudiant de tous les modules de cette UE dans ce semestre."""
|
||||||
sco_moduleimpl_inscriptions.do_etud_inscrit_ue(
|
sco_moduleimpl_inscriptions.do_etud_inscrit_ue(
|
||||||
@ -2257,8 +2258,8 @@ def _evaluation_check_write_access(context, REQUEST, moduleimpl_id=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_evaluation_create")
|
@bp.route("/do_evaluation_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEnsView)
|
@permission_required(Permission.ScoEnsView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_evaluation_create(
|
def do_evaluation_create(
|
||||||
context,
|
context,
|
||||||
moduleimpl_id=None,
|
moduleimpl_id=None,
|
||||||
@ -2394,8 +2395,8 @@ def _check_evaluation_args(context, args):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/evaluation_delete")
|
@bp.route("/evaluation_delete")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEnsView)
|
@permission_required(Permission.ScoEnsView)
|
||||||
|
@scodoc7func(context)
|
||||||
def evaluation_delete(context, REQUEST, evaluation_id):
|
def evaluation_delete(context, REQUEST, evaluation_id):
|
||||||
"""Form delete evaluation"""
|
"""Form delete evaluation"""
|
||||||
El = context.do_evaluation_list(args={"evaluation_id": evaluation_id})
|
El = context.do_evaluation_list(args={"evaluation_id": evaluation_id})
|
||||||
@ -2470,8 +2471,8 @@ def evaluation_delete(context, REQUEST, evaluation_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_evaluation_list")
|
@bp.route("/do_evaluation_list")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_evaluation_list(context, args, sortkey=None):
|
def do_evaluation_list(context, args, sortkey=None):
|
||||||
"""List evaluations, sorted by numero (or most recent date first).
|
"""List evaluations, sorted by numero (or most recent date first).
|
||||||
|
|
||||||
@ -2521,8 +2522,8 @@ def do_evaluation_list(context, args, sortkey=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_evaluation_list_in_formsemestre")
|
@bp.route("/do_evaluation_list_in_formsemestre")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_evaluation_list_in_formsemestre(context, formsemestre_id):
|
def do_evaluation_list_in_formsemestre(context, formsemestre_id):
|
||||||
"list evaluations in this formsemestre"
|
"list evaluations in this formsemestre"
|
||||||
mods = sco_moduleimpl.do_moduleimpl_list(context, formsemestre_id=formsemestre_id)
|
mods = sco_moduleimpl.do_moduleimpl_list(context, formsemestre_id=formsemestre_id)
|
||||||
@ -2535,8 +2536,8 @@ def do_evaluation_list_in_formsemestre(context, formsemestre_id):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_evaluation_edit")
|
@bp.route("/do_evaluation_edit")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEnsView)
|
@permission_required(Permission.ScoEnsView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_evaluation_edit(context, REQUEST, args):
|
def do_evaluation_edit(context, REQUEST, args):
|
||||||
"edit a evaluation"
|
"edit a evaluation"
|
||||||
evaluation_id = args["evaluation_id"]
|
evaluation_id = args["evaluation_id"]
|
||||||
@ -2557,8 +2558,8 @@ def do_evaluation_edit(context, REQUEST, args):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/evaluation_edit")
|
@bp.route("/evaluation_edit")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEnsView)
|
@permission_required(Permission.ScoEnsView)
|
||||||
|
@scodoc7func(context)
|
||||||
def evaluation_edit(context, evaluation_id, REQUEST):
|
def evaluation_edit(context, evaluation_id, REQUEST):
|
||||||
"form edit evaluation"
|
"form edit evaluation"
|
||||||
return sco_evaluations.evaluation_create_form(
|
return sco_evaluations.evaluation_create_form(
|
||||||
@ -2567,8 +2568,8 @@ def evaluation_edit(context, evaluation_id, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/evaluation_create")
|
@bp.route("/evaluation_create")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEnsView)
|
@permission_required(Permission.ScoEnsView)
|
||||||
|
@scodoc7func(context)
|
||||||
def evaluation_create(context, moduleimpl_id, REQUEST):
|
def evaluation_create(context, moduleimpl_id, REQUEST):
|
||||||
"form create evaluation"
|
"form create evaluation"
|
||||||
return sco_evaluations.evaluation_create_form(
|
return sco_evaluations.evaluation_create_form(
|
||||||
@ -2577,8 +2578,8 @@ def evaluation_create(context, moduleimpl_id, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/evaluation_listenotes")
|
@bp.route("/evaluation_listenotes")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def evaluation_listenotes(context, REQUEST=None):
|
def evaluation_listenotes(context, REQUEST=None):
|
||||||
"""Affichage des notes d'une évaluation"""
|
"""Affichage des notes d'une évaluation"""
|
||||||
if REQUEST.form.get("format", "html") == "html":
|
if REQUEST.form.get("format", "html") == "html":
|
||||||
@ -2701,8 +2702,8 @@ def _notes_getall(
|
|||||||
|
|
||||||
# --- Bulletins
|
# --- Bulletins
|
||||||
@bp.route("/formsemestre_bulletins_pdf")
|
@bp.route("/formsemestre_bulletins_pdf")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_bulletins_pdf(
|
def formsemestre_bulletins_pdf(
|
||||||
context, formsemestre_id, REQUEST, version="selectedevals"
|
context, formsemestre_id, REQUEST, version="selectedevals"
|
||||||
):
|
):
|
||||||
@ -2714,8 +2715,8 @@ def formsemestre_bulletins_pdf(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/etud_bulletins_pdf")
|
@bp.route("/etud_bulletins_pdf")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def etud_bulletins_pdf(context, etudid, REQUEST, version="selectedevals"):
|
def etud_bulletins_pdf(context, etudid, REQUEST, version="selectedevals"):
|
||||||
"Publie tous les bulletins d'un etudiants dans un classeur PDF"
|
"Publie tous les bulletins d'un etudiants dans un classeur PDF"
|
||||||
pdfdoc, filename = sco_bulletins_pdf.get_etud_bulletins_pdf(
|
pdfdoc, filename = sco_bulletins_pdf.get_etud_bulletins_pdf(
|
||||||
@ -2737,8 +2738,8 @@ sco_publish(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_bulletins_mailetuds")
|
@bp.route("/formsemestre_bulletins_mailetuds")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_bulletins_mailetuds(
|
def formsemestre_bulletins_mailetuds(
|
||||||
context,
|
context,
|
||||||
formsemestre_id,
|
formsemestre_id,
|
||||||
@ -2802,8 +2803,8 @@ sco_publish(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/appreciation_add_form")
|
@bp.route("/appreciation_add_form")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoEnsView)
|
@permission_required(Permission.ScoEnsView)
|
||||||
|
@scodoc7func(context)
|
||||||
def appreciation_add_form(
|
def appreciation_add_form(
|
||||||
context,
|
context,
|
||||||
etudid=None,
|
etudid=None,
|
||||||
@ -2946,8 +2947,8 @@ def _is_chef_or_diretud(context, REQUEST, sem):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_validation_etud_form")
|
@bp.route("/formsemestre_validation_etud_form")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_validation_etud_form(
|
def formsemestre_validation_etud_form(
|
||||||
context,
|
context,
|
||||||
formsemestre_id,
|
formsemestre_id,
|
||||||
@ -2974,8 +2975,8 @@ def formsemestre_validation_etud_form(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_validation_etud")
|
@bp.route("/formsemestre_validation_etud")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_validation_etud(
|
def formsemestre_validation_etud(
|
||||||
context,
|
context,
|
||||||
formsemestre_id,
|
formsemestre_id,
|
||||||
@ -3006,8 +3007,8 @@ def formsemestre_validation_etud(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_validation_etud_manu")
|
@bp.route("/formsemestre_validation_etud_manu")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_validation_etud_manu(
|
def formsemestre_validation_etud_manu(
|
||||||
context,
|
context,
|
||||||
formsemestre_id,
|
formsemestre_id,
|
||||||
@ -3044,8 +3045,8 @@ def formsemestre_validation_etud_manu(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_validate_previous_ue")
|
@bp.route("/formsemestre_validate_previous_ue")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_validate_previous_ue(
|
def formsemestre_validate_previous_ue(
|
||||||
context, formsemestre_id, etudid=None, REQUEST=None
|
context, formsemestre_id, etudid=None, REQUEST=None
|
||||||
):
|
):
|
||||||
@ -3070,8 +3071,8 @@ sco_publish(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_ext_edit_ue_validations")
|
@bp.route("/formsemestre_ext_edit_ue_validations")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_ext_edit_ue_validations(
|
def formsemestre_ext_edit_ue_validations(
|
||||||
context, formsemestre_id, etudid=None, REQUEST=None
|
context, formsemestre_id, etudid=None, REQUEST=None
|
||||||
):
|
):
|
||||||
@ -3096,8 +3097,8 @@ sco_publish(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/etud_ue_suppress_validation")
|
@bp.route("/etud_ue_suppress_validation")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def etud_ue_suppress_validation(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
def etud_ue_suppress_validation(context, etudid, formsemestre_id, ue_id, REQUEST=None):
|
||||||
"""Suppress a validation (ue_id, etudid) and redirect to formsemestre"""
|
"""Suppress a validation (ue_id, etudid) and redirect to formsemestre"""
|
||||||
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
||||||
@ -3113,8 +3114,8 @@ def etud_ue_suppress_validation(context, etudid, formsemestre_id, ue_id, REQUEST
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_validation_auto")
|
@bp.route("/formsemestre_validation_auto")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_validation_auto(context, formsemestre_id, REQUEST):
|
def formsemestre_validation_auto(context, formsemestre_id, REQUEST):
|
||||||
"Formulaire saisie automatisee des decisions d'un semestre"
|
"Formulaire saisie automatisee des decisions d'un semestre"
|
||||||
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
||||||
@ -3131,8 +3132,8 @@ def formsemestre_validation_auto(context, formsemestre_id, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/do_formsemestre_validation_auto")
|
@bp.route("/do_formsemestre_validation_auto")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def do_formsemestre_validation_auto(context, formsemestre_id, REQUEST):
|
def do_formsemestre_validation_auto(context, formsemestre_id, REQUEST):
|
||||||
"Formulaire saisie automatisee des decisions d'un semestre"
|
"Formulaire saisie automatisee des decisions d'un semestre"
|
||||||
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
||||||
@ -3149,8 +3150,8 @@ def do_formsemestre_validation_auto(context, formsemestre_id, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_fix_validation_ues")
|
@bp.route("/formsemestre_fix_validation_ues")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_fix_validation_ues(context, formsemestre_id, REQUEST=None):
|
def formsemestre_fix_validation_ues(context, formsemestre_id, REQUEST=None):
|
||||||
"Verif/reparation codes UE"
|
"Verif/reparation codes UE"
|
||||||
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
if not context._can_validate_sem(REQUEST, formsemestre_id):
|
||||||
@ -3167,8 +3168,8 @@ def formsemestre_fix_validation_ues(context, formsemestre_id, REQUEST=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/formsemestre_validation_suppress_etud")
|
@bp.route("/formsemestre_validation_suppress_etud")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def formsemestre_validation_suppress_etud(
|
def formsemestre_validation_suppress_etud(
|
||||||
context, formsemestre_id, etudid, REQUEST=None, dialog_confirmed=False
|
context, formsemestre_id, etudid, REQUEST=None, dialog_confirmed=False
|
||||||
):
|
):
|
||||||
@ -3376,8 +3377,8 @@ sco_publish(
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/check_sem_integrity")
|
@bp.route("/check_sem_integrity")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def check_sem_integrity(context, formsemestre_id, REQUEST):
|
def check_sem_integrity(context, formsemestre_id, REQUEST):
|
||||||
"""Debug.
|
"""Debug.
|
||||||
Check that ue and module formations are consistents
|
Check that ue and module formations are consistents
|
||||||
@ -3412,8 +3413,8 @@ def check_sem_integrity(context, formsemestre_id, REQUEST):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/check_form_integrity")
|
@bp.route("/check_form_integrity")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def check_form_integrity(context, formation_id, fix=False, REQUEST=None):
|
def check_form_integrity(context, formation_id, fix=False, REQUEST=None):
|
||||||
"debug"
|
"debug"
|
||||||
log("check_form_integrity: formation_id=%s fix=%s" % (formation_id, fix))
|
log("check_form_integrity: formation_id=%s fix=%s" % (formation_id, fix))
|
||||||
@ -3449,8 +3450,8 @@ def check_form_integrity(context, formation_id, fix=False, REQUEST=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/check_formsemestre_integrity")
|
@bp.route("/check_formsemestre_integrity")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def check_formsemestre_integrity(context, formsemestre_id, REQUEST=None):
|
def check_formsemestre_integrity(context, formsemestre_id, REQUEST=None):
|
||||||
"debug"
|
"debug"
|
||||||
log("check_formsemestre_integrity: formsemestre_id=%s" % (formsemestre_id))
|
log("check_formsemestre_integrity: formsemestre_id=%s" % (formsemestre_id))
|
||||||
@ -3501,8 +3502,8 @@ def check_formsemestre_integrity(context, formsemestre_id, REQUEST=None):
|
|||||||
|
|
||||||
|
|
||||||
@bp.route("/check_integrity_all")
|
@bp.route("/check_integrity_all")
|
||||||
@scodoc7func(context)
|
|
||||||
@permission_required(Permission.ScoView)
|
@permission_required(Permission.ScoView)
|
||||||
|
@scodoc7func(context)
|
||||||
def check_integrity_all(context, REQUEST=None):
|
def check_integrity_all(context, REQUEST=None):
|
||||||
"debug: verifie tous les semestres et tt les formations"
|
"debug: verifie tous les semestres et tt les formations"
|
||||||
# formations
|
# formations
|
||||||
|
107
refactor.py
Normal file
107
refactor.py
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
# -*- coding: UTF-8 -*
|
||||||
|
|
||||||
|
|
||||||
|
"""Outil pour migration ScoDoc 7 => ScoDoc 8
|
||||||
|
|
||||||
|
Pour chaque module dans views:
|
||||||
|
- construire la liste des fonctions définies dans ce module:
|
||||||
|
get_module_functions
|
||||||
|
|
||||||
|
Pour chaque module dans views et dans scodoc:
|
||||||
|
- remplacer context.xxx par app.views.M.xxx
|
||||||
|
où M est le module de views définissant xxx
|
||||||
|
Si xxx n'est pas trouvé, erreur !
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
from __future__ import print_function
|
||||||
|
import re
|
||||||
|
|
||||||
|
from pprint import pprint as pp
|
||||||
|
import sys
|
||||||
|
import types
|
||||||
|
|
||||||
|
import click
|
||||||
|
import flask
|
||||||
|
|
||||||
|
import app
|
||||||
|
from app import create_app, cli, db
|
||||||
|
from app.auth.models import User, Role, UserRole
|
||||||
|
|
||||||
|
from config import Config
|
||||||
|
|
||||||
|
from app.views import notes
|
||||||
|
|
||||||
|
TYPES_TO_SCAN = {
|
||||||
|
types.FunctionType,
|
||||||
|
# types.ClassType,
|
||||||
|
# types.DictionaryType,
|
||||||
|
# types.FloatType,
|
||||||
|
# types.IntType,
|
||||||
|
# types.ListType,
|
||||||
|
# types.StringType,
|
||||||
|
# types.TupleType,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def get_module_symbols(module):
|
||||||
|
"""returns list of symbols (functions and constants) defined in the given module"""
|
||||||
|
return [
|
||||||
|
f.__name__
|
||||||
|
for f in [getattr(module, name) for name in dir(module)]
|
||||||
|
if (type(f) in TYPES_TO_SCAN)
|
||||||
|
and ((type(f) != types.FunctionType) or (f.__module__ == module.__name__))
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
# print("\n".join(f.__name__ for f in get_module_functions(notes)))
|
||||||
|
|
||||||
|
|
||||||
|
def scan_views_symbols():
|
||||||
|
"""Scan modules in app.views and returns
|
||||||
|
{ }
|
||||||
|
"""
|
||||||
|
views_modules = [
|
||||||
|
getattr(app.views, mod_name)
|
||||||
|
for mod_name in dir(app.views)
|
||||||
|
if type(getattr(app.views, mod_name)) == types.ModuleType
|
||||||
|
]
|
||||||
|
sym2mod = {} # symbole_name : module
|
||||||
|
for module in views_modules:
|
||||||
|
start = "app.views."
|
||||||
|
assert module.__name__.startswith(start)
|
||||||
|
module_name = module.__name__[len(start) :]
|
||||||
|
symbols = set(get_module_symbols(module))
|
||||||
|
print("%d symbols defined in %s" % (len(symbols), module))
|
||||||
|
dups = symbols.intersection(sym2mod)
|
||||||
|
if len(dups):
|
||||||
|
print("duplicated symbols !")
|
||||||
|
for dup in dups:
|
||||||
|
print("%s:\t%s\t%s" % (dup, sym2mod[dup], module_name))
|
||||||
|
|
||||||
|
sym2mod.update({s: module_name for s in symbols})
|
||||||
|
return sym2mod
|
||||||
|
|
||||||
|
|
||||||
|
def replace_context_calls(sourcefilename, sym2mod):
|
||||||
|
undefined_list = [] # noms de fonctions non présents dans les modules "views"
|
||||||
|
|
||||||
|
def repl(m):
|
||||||
|
funcname = m.group(1)
|
||||||
|
module = sym2mod.get(funcname, False)
|
||||||
|
if module:
|
||||||
|
return module + "." + funcname
|
||||||
|
else:
|
||||||
|
undefined_list.append((sourcefilename, funcname))
|
||||||
|
return m.group(0) # leave unchanged
|
||||||
|
|
||||||
|
print("reading %s" % sourcefilename)
|
||||||
|
source = open(sourcefilename).read()
|
||||||
|
exp = re.compile(r"context\.([a-zA-Z0-9_]+)")
|
||||||
|
source2 = exp.sub(repl, source)
|
||||||
|
return source2, undefined_list
|
||||||
|
|
||||||
|
|
||||||
|
sym2mod = scan_views_symbols()
|
||||||
|
|
||||||
|
source2, undefined_list = replace_context_calls("app/scodoc/sco_core.py", sym2mod)
|
Loading…
Reference in New Issue
Block a user