- Timestamp:
- Feb 1, 2011, 10:33:23 AM (14 years ago)
- Branches:
- master, client
- Children:
- 0e4f185
- Parents:
- f63d43a
- git-author:
- Alex Dehnert <adehnert@…> (02/01/11 10:29:23)
- git-committer:
- Alex Dehnert <adehnert@…> (02/01/11 10:33:23)
- Location:
- remit
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
remit/remit_templates/vouchers/emails/request_approval_admin.txt
r5eb287f rd50ec5b 18 18 Approval Status: {{ request.approval_status|approval_status }} 19 19 Approval Time: {{ request.approval_time }} 20 Approval Type: {{ approval_type }} 20 21 21 22 Check Address: -
remit/remit_templates/vouchers/reimbursementrequest_list.html
raf48a00 rd50ec5b 78 78 </td> 79 79 <td class='request-status-{{ object.approval_status|approval_status_class}}'> 80 {{ object.approval_status|approval_status }} ({{ object.approval_time }}) 80 {{ object.approval_status|approval_status }} ({{ object.approval_time|date:"SHORT_DATETIME_FORMAT"}}) 81 {% if object.voucher %} 82 <br />[Voucher: {{object.voucher.pk}}] 83 {% endif %} 84 {% if object.rfp %} 85 <br />[{{object.rfp}}] 86 {% endif %} 81 87 </td> 82 88 </tr> -
remit/settings.py
r29e55de rd50ec5b 39 39 # making browsers want to open in an external application 40 40 LATEX_MIMETYPE = 'application/x-latex' 41 42 SHORT_DATETIME_FORMAT = 'Y-m-d G:i' 43 SHORT_DATETIME_FORMAT_F = '%Y-%M-%d %H:%M' 41 44 42 45 from local_settings import * -
remit/vouchers/models.py
r680b2bd rd50ec5b 57 57 ) 58 58 59 def create_transfers(self, signatory, signatory_email=None):59 def create_transfers(self, ): 60 60 finance_core.models.make_transfer( 61 61 self.name, … … 108 108 signatory_email: email address of signatory (provide None for default) 109 109 """ 110 voucher =self.convert_to_voucher(signatory_name, signatory_email,)110 self.convert_to_voucher(signatory_name, signatory_email,) 111 111 tmpl = get_template('vouchers/emails/request_approval_admin.txt') 112 112 ctx = Context({ 113 113 'approver': approver, 114 114 'request': self, 115 'approval_type': 'voucher', 115 116 }) 116 117 body = tmpl.render(ctx) 117 118 mail_admins( 118 'Request approval: %s approved $%s ' % (119 'Request approval: %s approved $%s [voucher]' % ( 119 120 approver, 120 121 self.amount, … … 123 124 ) 124 125 125 def approve_with_rfp(self, approver, ): 126 def approve_as_rfp(self, approver, ): 127 self.convert_to_rfp() 128 tmpl = get_template('vouchers/emails/request_approval_admin.txt') 129 ctx = Context({ 130 'approver': approver, 131 'request': self, 132 'approval_type': 'RFP', 133 }) 134 body = tmpl.render(ctx) 135 mail_admins( 136 'Request approval: %s approved $%s [RFP]' % ( 137 approver, 138 self.amount, 139 ), 140 body, 141 ) 126 142 127 143 … … 174 190 ) 175 191 192 class RFP(models.Model): 193 create_time = models.DateTimeField(default=datetime.datetime.now) 194 195 def __unicode__(self, ): 196 return "RFP: %s" % (self.create_time.strftime(settings.SHORT_DATETIME_FORMAT_F), ) 176 197 177 198 class Documentation(models.Model): … … 289 310 def filter_can_only(cls, actions, user): 290 311 return [ action for action in actions if action.can(user) ] 312 291 313 def bulk_action_approve(http_request, rr): 292 314 approver = http_request.user … … 297 319 rr.approve(approver, signatory_name) 298 320 return True, "request approved" 321 322 def bulk_action_approve_as_rfp(http_request, rr): 323 approver = http_request.user 324 if rr.rfp: 325 return False, "already marked as RFPized" 326 else: 327 rr.approve_as_rfp(approver, ) 328 return True, "request marked as RFPized" 299 329 300 330 def bulk_action_email_factory(stock_email_obj): … … 317 347 perm_predicate=perm_checker('vouchers.can_approve'), 318 348 )) 349 bulk_request_actions.append(BulkRequestAction( 350 name='approve_as_rfp', 351 label='Mark Requests as RFPized', 352 action=bulk_action_approve_as_rfp, 353 perm_predicate=perm_checker('vouchers.can_approve'), 354 )) 319 355 for name, stockemail in stock_emails.items(): 320 356 if stockemail.context == 'request':
Note: See TracChangeset
for help on using the changeset viewer.