resolve base.py conflict
This commit is contained in:
		
					parent
					
						
							
								073c9bf192
							
						
					
				
			
			
				commit
				
					
						e137e8a26e
					
				
			
		
					 5 changed files with 97 additions and 44 deletions
				
			
		
							
								
								
									
										52
									
								
								utils/mailer.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								utils/mailer.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,52 @@ | |||
| import six | ||||
| from django.core.mail import send_mail | ||||
| 
 | ||||
| from django.conf import settings | ||||
| 
 | ||||
| 
 | ||||
| class BaseMailer(object): | ||||
|     def __init__(self): | ||||
|         self._slug = None | ||||
|         self.no_replay_mail = 'no-replay@ungleich.ch' | ||||
| 
 | ||||
|         if not hasattr(self, '_to'): | ||||
|             self._to = None | ||||
| 
 | ||||
|     @property | ||||
|     def slug(self): | ||||
|         return self._slug | ||||
| 
 | ||||
|     @slug.setter | ||||
|     def slug(self, val): | ||||
|         assert isinstance(val, six.string_types), "slug is not string: %r" % val | ||||
|         self._slug = val | ||||
| 
 | ||||
|     @property | ||||
|     def registration(self): | ||||
|         return self.message | ||||
| 
 | ||||
|     @registration.setter | ||||
|     def registration(self, val): | ||||
|         msg = "registration is not dict with fields subject,message" | ||||
|         assert type(val) is dict, msg | ||||
|         assert val.get('subject') and val.get('message'), msg | ||||
|         self._message, self._subject, self._from = ( | ||||
|             val.get('message'), val.get('subject'), val.get('from')) | ||||
|         assert isinstance(self.slug, six.string_types), 'slug not set' | ||||
| 
 | ||||
|     def send_mail(self, to=None): | ||||
|         if not to: | ||||
|             to = self._to | ||||
|         if not self.message: | ||||
|             raise NotImplementedError | ||||
|         send_mail(self._subject, self._message, self.no_replay_mail, [to]) | ||||
| 
 | ||||
| 
 | ||||
| class DigitalGlarusRegistrationMailer(BaseMailer): | ||||
|     message = settings.REGISTRATION_MESSAGE | ||||
| 
 | ||||
|     def __init__(self, slug): | ||||
|         self.slug = slug | ||||
|         self.registration = self.message | ||||
|         self._message = self._message.format(slug=self._slug) | ||||
|         super().__init__() | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue