def upload(self): title = request.POST['title'] description = request.POST['description'] file = request.POST['upload'] if file is not None and file != '': f = File(file.filename, title, mimetype=file.type) f.store(file.file) meta.Session.add(f) meta.Session.commit() redirect(url(controller='admin', action='files'))
def _upload_file_basic(self, obj): from ututi.model import Group if isinstance(obj, Group) and not obj.has_file_area: return None file = request.params['attachment'] folder = request.params['folder'] if obj.upload_status != obj.LIMIT_REACHED: if file is not None and file != '': f = File(file.filename, file.filename, mimetype=file.type) f.store(file.file) f.folder = folder obj.files.append(f) meta.Session.add(f) meta.Session.commit() return f else: return None
def studentgroup_send_message(self, group): if hasattr(self, 'form_result'): subject = self.form_result['subject'] message = self.form_result['message'] #wrap the message with additional information msg_text = render('/emails/teacher_message.mako', extra_vars={'teacher':c.user, 'subject':subject, 'message':message}) if group.group is not None: recipient = group.group if recipient.mailinglist_enabled: attachments = [] if self.form_result['file'] != '': file = self.form_result['file'] f = File(file.filename, file.filename, mimetype=file.type) f.store(file.file) meta.Session.add(f) meta.Session.commit() attachments.append(f) post_message(recipient, c.user, subject, msg_text, force=True, attachments=attachments) else: attachments = [] if self.form_result['file'] != '': attachments = [{'filename': self.form_result['file'].filename, 'file': self.form_result['file'].file}] msg = EmailMessage(_('Message from %(teacher_name)s: %(subject)s') % { 'subject': subject, 'teacher_name': c.user.fullname}, msg_text, sender=recipient.list_address, attachments=attachments) msg.send(group.group) evt = TeacherMessageEvent() evt.context = group.group evt.data = '%s \n\n %s' % (subject, msg_text) evt.user = c.user meta.Session.add(evt) meta.Session.commit() else: attachments = [] if self.form_result['file'] != '': attachments = [{'filename': self.form_result['file'].filename, 'file': self.form_result['file'].file}] msg = EmailMessage(subject, msg_text, sender=c.user.email.email, force=True, attachments=attachments) msg.send(group.email) message = _(u'Message sent to %(group_title)s (%(group_email)s).') % { 'group_title': group.title, 'group_email': group.email} h.flash(message) redirect(url(controller='profile', action='dashboard'))