1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
|
from Products.GestionCourrier.config import ARTICLE_GROUPS1
from Products.GestionCourrier.config import ARTICLE_GROUPS2
from Products.Archetypes.public import *
from Products.Archetypes.Marshall import PrimaryFieldMarshaller
from Products.CMFCore import CMFCorePermissions
from config import PROJECTNAME
schema = BaseSchema + Schema((
StringField('Num_dpt',
vocabulary=ARTICLE_GROUPS1,
widget=SelectionWidget(label="Numero de departement"),
required=1,
),
StringField('Type',
vocabulary=ARTICLE_GROUPS2,
widget=SelectionWidget(label="Type"),
required=1,
),
IntegerField('Annee',
default='06',
widget=IntegerWidget(label="Annee"),
required=1,
),
IntegerField('Chrono',
widget=IntegerWidget(label="Chrono"),
default_method="incrChrono",
accessor="getChrono",
required=1,
),
StringField('Objet',
widget=StringWidget(label="Objet"),
required=1,
),
StringField('Destinataire',
widget=StringWidget(label="Destinataire"),
required=1,
),
FileField('Fichier',
widget=FileWidget(label="Fichier"),
),),
marshall=PrimaryFieldMarshaller(),
)
class Courrier(BaseContent):
schema = schema
def getChrono(self):
#objFichier = open(context.abspath(os.path.dirname(sys.argv[0]))+"\numero.txt",'r+')
objFichier = open(r'C:\Program Files\Plone 2\Data\Products\GestionCourrier\numero.txt','r+')
auxi = objFichier.read()
objFichier.close()
Chrono=int(auxi)
return Chrono
def incrChrono(self):
objFichier = open(r'C:\Program Files\Plone 2\Data\Products\GestionCourrier\numero.txt','r+')
#objFichier = open(os.path.abspath(os.path.dirname(sys.argv[0]))+"\numero.txt",'r+')
tmp = objFichier.read()
objFichier.seek(0)
objFichier.write(str(int(tmp)+1))
objFichier.close()
actions = ({
'id': 'view',
'name': 'View',
'action': 'string:${object_url}/courrier_view',
'permissions': (CMFCorePermissions.View,)
},)
registerType(Courrier, PROJECTNAME)
schema2 = BaseBTreeFolderSchema
class DossierCourrier(BaseBTreeFolder):
"""Un simple dossier"""
schema = schema2
allowed_content_types = ('Courrier',)
Initial_view_name = 'folder_listing'
Default_view_method = 'folder_tabular_view'
actions = ({
'id': 'view',
'name': 'View',
'action': 'string:${object_url}/folder_tabular_view',
'permissions': (CMFCorePermissions.View,)
},)
registerType(DossierCourrier, PROJECTNAME) |
Partager