from django.db import models from django.core.files.storage import FileSystemStorage from django.utils.translation import ugettext as _ from django.db.models.signals import post_save from django.dispatch import receiver from pyas2 import pyas2init from pyas2 import as2utils import os import sys # Create your models here. DEFAULT_ENTRY = ('',"---------") pyas2init.initialize() pyas2init.initserverlogging('pyas2') upload_storage = FileSystemStorage(location=pyas2init.gsettings['root_dir'], base_url='/pyas2') class PrivateCertificate(models.Model): certificate = models.FileField(upload_to='certificates', storage=upload_storage) ca_cert = models.FileField(upload_to='certificates', storage=upload_storage, verbose_name=_('Local CA Store'), null=True, blank=True) certificate_passphrase = models.CharField(max_length=100) def __str__(self): return os.path.basename(self.certificate.name) class PublicCertificate(models.Model): certificate = models.FileField(upload_to='certificates', storage=upload_storage) ca_cert = models.FileField(upload_to='certificates', storage=upload_storage, verbose_name=_('Local CA Store'), null=True, blank=True) verify_cert = models.BooleanField(verbose_name=_('Verify Certificate'), default=True,help_text=_('Uncheck this option to disable certificate verification.')) def __str__(self): return os.path.basename(self.certificate.name)
from django.db import models from django.core.files.storage import FileSystemStorage from django.utils.translation import ugettext as _ from django.db.models.signals import post_save from django.dispatch import receiver from pyas2 import pyas2init from pyas2 import as2utils import os # Initialize the pyas2 settings and loggers pyas2init.initialize() pyas2init.initserverlogging('pyas2') # Set default entry for selects DEFAULT_ENTRY = ('', "---------") # Set the storage directory for certificates def get_certificate_path(instance, filename): return os.path.join(pyas2init.gsettings['root_dir'], 'certificates', filename) class PrivateCertificate(models.Model): certificate = models.FileField(max_length=500, upload_to=get_certificate_path) ca_cert = models.FileField(max_length=500, upload_to=get_certificate_path, verbose_name=_('Local CA Store'), null=True, blank=True)