コード例 #1
0
ファイル: views.py プロジェクト: qwer9900/forum
def comment(request):
    if request.method == "POST":
        article_id = int(request.POST.get("article_id"))
        article = Article.objects.get(id=article_id)
        content = request.POST.get("comment")
        current_no = request.POST.get("current_no")
        to_comment_id = int(request.POST.get("to_comment_id", 0))
        c = Comment(article=article, content=content, status=0)
        c.owner = request.user
        if to_comment_id != 0:
            to_comment = Comment.objects.get(id=to_comment_id)
        else:
            to_comment = None
        c.to_comment = to_comment
        c.save()
        if c.to_comment:
            msg = Message(owner=c.to_comment.owner, status=-1)
            msg.content = "{}回复了你的评论:{}".format(c.owner, c.to_comment.content)
            msg.link = "{}?page_no={}".format(c.article.id, current_no)
        else:
            msg = Message(owner=c.article.owner, status=-1)
            msg.content = "{}回复了你的文章;{}".format(c.owner, c.article.title)
            msg.link = "{}?page_no={}".format(c.article.id, current_no)
        msg.save()
        if Comment.objects.filter(id=c.id):
            a = {"status": "ok"}
            return json_response(a)
        else:
            a = "err"
            return json_response(a)
コード例 #2
0
    def handle(self, *args, **options):
        if options['messages']:
            nb_messages = options['messages']
        else:
            nb_messages = DEFAULT_NB_MESSAGES

        if options['users']:
            nb_users = options['users']
        else:
            nb_users = DEFAULT_NB_USERS

        users = []

        print("Starting the generation...")

        for _ in range(0, nb_users):
            username = "******".format(
                DUMMY_USERNAMES[randrange(0, len(DUMMY_USERNAMES))], uuid4())
            user = User(username=username, email='{}@asd.com'.format(username))
            user.save()

            users.append(user)

        print("Created {} users.".format(nb_users))

        for _ in range(0, nb_messages):
            message = Message(sender=users[randrange(0, len(users))],
                              recipient=users[randrange(0, len(users))],
                              content=DUMMY_CONTENTS[randrange(
                                  0, len(DUMMY_CONTENTS))])
            message.save()

        print("Created {} messages. Success!".format(nb_messages))
コード例 #3
0
ファイル: views.py プロジェクト: chenzutao92/mysite
def comment(request):
    if request.method == "POST":
        article_id = request.POST['article_id']
        content = request.POST['content'].strip()
        to_comment_id = int(request.POST.get("to_comment_id", 0))
        article = Article.objects.get(id=article_id)
        user = request.user
        if not content:
            return json_response({"status": "err", "msg": "内容不能为空"})
        if to_comment_id != 0:
            to_comment = Comment.objects.get(id=to_comment_id)
        else:
            to_comment = None
        c = Comment(owner=user,
                    article=article,
                    content=content,
                    status=0,
                    to_comment=to_comment)
        c.save()
        link = "http://%s/article/detail/%s" % (request.get_host(), article_id)
        print(link)
        contents = "有人评论你‘" + content + "'"
        m = Message(owner=user, content=contents, link=link, status=1)
        m.save()

        return json_response({"status": "ok", "msg": ""})
    else:
        return render(request, "article/article_detail.html")
コード例 #4
0
ファイル: views.py プロジェクト: merlinsbeard/tulong-dev
    def post(self, request, *args, **kwargs):
        """
		Checkes if Bid has already been accepted. Accepts the bid if not.
		If already has enough chosen bids, automataically updates the job.
		"""
        pk = kwargs['pk']
        bid = Bid.objects.get(pk=pk)
        job = bid.job
        context = {}
        profile = Person.objects.get(person=self.request.user)
        if 'hire' in request.POST:
            number_of_hired_workers = len(job.bid_set.filter(is_chosen=True))
            #Checks if Job already has enough chosen bids
            if number_of_hired_workers != job.number_employee:
                bid.is_chosen = True
                status = "Hired!"
                receiver = bid.bidder
                job.jobworker_set.create(worker=receiver)
                name = '%s %s' % (profile.firstname, profile.lastname[0])
                message = """
					<a href='%s'> %s</a> has chosen your bid at <a href='%s'> %s</a>
					""" % (profile.get_absolute_url(), name, job.get_absolute_url(), job)
                m = Message(title="Chosen Bidder",
                            content=message,
                            receiver=receiver,
                            sender=profile)
                m.save()
                receiver.person.email
                subject = "%s has chosen your bid at %s" % (name, job)
                message = "Congrats! please check your home page for further details"
                to = receiver.person.email
                #send_mail(subject,message,'*****@*****.**',[to],fail_silently=False)
                context = {'profile': profile, 'job': job}
                email_content = render_to_string('email/bid_accept.html',
                                                 context)
                send_mail(subject,
                          email_content,
                          '*****@*****.**', [to],
                          fail_silently=False)
                #check if already has enough people
                job.save()
                bid.save()
                number_of_hired_workers = len(
                    job.bid_set.filter(is_chosen=True))
                if number_of_hired_workers == job.number_employee:
                    job.has_winner = True
                    job.save()
            else:
                status = "Already Hired the required people!"
        elif 'unhire' in request.POST:
            bid.is_chosen = False
            job = job
            job.has_winner = False
            status = "Unhired!"
        bid.save()
        context['status'] = status
        context['back'] = job.get_absolute_url()
        return render_to_response('success.html',
                                  context,
                                  context_instance=RequestContext(request))
コード例 #5
0
    def post(request):

        serializer = MessageSerializer(many=False, data=request.data)

        if serializer.is_valid():

            message = serializer.validated_data

            a = Application.objects.get(pk=request.data['application'])

            del message['application']

            message['author_name'] = a.name

            message['thumb_url'] = a.thumb_url

            m = Message(a, message['title'], message['text'], message['color'])

            if Slack.post_message(m):
                return Response(None, status=204)
            else:
                return Response({"error": "Something happened"}, status=500)

        else:
            return Response(serializer.errors, status=400)
コード例 #6
0
def media_create(request, *args, **kwargs):
    if request.method == 'POST':
        contract_id = kwargs.get('pk')
        contract = Contract.objects.get(pk=contract_id)

        message = Message()
        message.sent_by = contract.discussion.influencer.user
        message.sent_to = contract.discussion.campaign.agent
        message.discussion = contract.discussion
        message.content = "I have uploaded post media. Please take a look at <a href='/campaigns/contracts/" + str(
            contract.id
        ) + "?post_actived=0d(this)'>here</a> and let me know your thought."
        message.save()

        res_dialog = asyncio.run(
            get_dialogs(request.session['chat_session_token'],
                        contract.discussion_id))
        asyncio.run(
            send_message(request.session['chat_session_token'],
                         res_dialog['_id'], message.content))

        media = Media()
        media.title = request.POST.get('media_title')
        media.media = request.FILES['media_file']
        media.file_name = request.FILES['media_file'].name
        media.upload_by = Influencer.objects.get(user=request.user)
        media.contract = contract
        media.save()

        return redirect('/campaigns/contracts/' + str(contract_id) +
                        '?post_actived=0')
コード例 #7
0
    def receive_message(self, incoming_sms: IncomingSms):
        phone_number = incoming_sms.from_number
        try:
            charity_user = CharityUser.objects.get(phone_number=phone_number)
        except:
            charity_user = CharityUser(phone_number=phone_number)
            charity_user.save()

        message = Message()
        message.status = MessageStatus.DELIVERED
        message.message = incoming_sms.body
        message.charity_user = charity_user
        message.save()
        # fix type here define __str__
        message = str(message.message)

        match_object = re.search("^subscribe (.*)", message)
        if match_object:
            topic_name = match_object.group(1)
            topic = list(NewsletterTopic.objects.filter(name=topic_name))[0]
            charity_user.subscribed_newsletter_topics.add(topic)
            charity_user.save()
            return MessagingResponse()

        match_object = re.search("^unsubscribe (.*)", message)
        if match_object:
            topic_name = match_object.group(1)
            topic = list(NewsletterTopic.objects.filter(name=topic_name))[0]
            charity_user.subscribed_newsletter_topics.remove(topic)
            charity_user.save()
            return MessagingResponse()

        return MessagingResponse()
コード例 #8
0
def create_client_message(request, *args, **kwargs):
    if request.method == 'POST':
        campaign_id = request.POST.get('campaign_id')
        campaign = Campaign.objects.get(pk=campaign_id)
        content = request.POST.get('content')
        type = request.POST.get('type')

        message = Message()
        if type == 'CA':
            message.sent_by = campaign.client
            message.sent_to = campaign.agent
        else:
            message.sent_by = campaign.agent
            message.sent_to = campaign.client

        message.campaign = campaign
        message.content = content
        message.save()

        return render(
            request, 'messages/client_message_body.html', {
                'channel_messages':
                Message.objects.filter(
                    campaign__id=campaign_id).order_by('sent_at'),
                'description':
                campaign
            })
コード例 #9
0
ファイル: views.py プロジェクト: merlinsbeard/tulong-dev
    def form_valid(self, form, **kwargs):
        ''' Validates the form of Comment 
			also puts the bidder and job 
		'''
        self.object = form.save(commit=False)
        job = self.request.session['job']
        form.instance.job = job

        person = Person.objects.get(person=self.request.user)
        form.instance.commentor = person

        profile = person
        profile_class = profile.person_class.person_class
        if profile_class == 'doer':
            receiver = job.creator

        elif profile_class == 'poster':
            receiver = self.object.receiver

        message = """
			<a href='%s'>%s</a> has reviewed you on task <a href='%s'> %s</a>.
			View your <a href='%s'>profile</a> to see.
				""" % (person.get_absolute_url, person, job.get_absolute_url(), job,
           receiver.get_absolute_url())
        m = Message(title="Comment",
                    content=message,
                    receiver=receiver,
                    sender=person)
        m.save()
        return super(CommentCreateView, self).form_valid(form)
コード例 #10
0
 def create(self, validated_data):
     data = {
         k: v
         for k, v in validated_data.items() if k != "message_user_id"
     }
     message = Message(**data)
     message.charity_user = CharityUser.objects.get(
         pk=validated_data["message_user_id"])
     return message
コード例 #11
0
def create_message(user, stream, content):
    if isinstance(user, AnonymousButNamedUser):
        return create_message_for_anonymous_but_named_user(
            user, stream, content)

    if not user_is_enabled(user):
        raise UserIsNotEnabledException

    message = Message(user=user, stream=stream, content=content)
    message.save()
    return message
コード例 #12
0
    def receive(self, text_data):

        text_data_json = json.loads(text_data)
        msg_text = text_data_json['msg_text']

        m = Message(msg_text=msg_text,
                    msg_sender=User.objects.get(user_name=self.user_name),
                    msg_group=Group.objects.get(pk=self.group_id))
        m.save()

        # Send message to room group
        async_to_sync(self.channel_layer.group_send)(self.room_group_name,
                                                     self.message_to_dict(m))
コード例 #13
0
ファイル: consumers.py プロジェクト: LeslieZarate/chatGo
 def new_message(self,data):
     message = Message(
         content= str(data['message']['content'].replace("\n", " ")),
         contact_id= int(data['message']['contact']),
         chat_id=int(data['message']['chat'])
     )
     message.save()      
     serializer = MessageSerializer(message)
     content = {
         'command': 'new_message',
         'message': serializer.data
     }
     return self.send_chat_message(content)
コード例 #14
0
ファイル: conftest.py プロジェクト: afrosimon/testapi
def messages(first_user, second_user):
    messages = []

    for _ in range(0, 10):
        message = Message(
            sender=first_user,
            recipient=second_user,
            content='test'
        )
        message.save()

        messages.append(message)

    return messages
コード例 #15
0
def index():
    initdb();
    messages = Message.query.order_by(Message.timestamp.desc()).all()
    form = HelloForm()
    if form.validate_on_submit():
        name = form.name.data
        body = form.body.data
        message = Message(body=body, name=name)
        db.session.add(message)
        db.session.commit()
        flash('Your message have been sent to the world!')
        return redirect(url_for('index'))

    return render_template('index.html', form=form, messages=messages)
コード例 #16
0
def create_message(request, *args, **kwargs):
    if request.method == 'POST':
        discussion_id = request.POST.get('discussion_id')
        if request.POST.get('dialog_id'):
            dialog_id = request.POST.get('dialog_id')
        discussion = Discussion.objects.get(pk=discussion_id)
        content = request.POST.get('content')
        type = request.POST.get('type')

        if type == 'CO':
            budget = request.POST.get('budget')
            contract = Contract()
            contract.contract_title = request.POST.get('title')
            contract.contract_terms = request.POST.get('terms')
            contract.contract_status = 'OF'
            contract.contract_budget = budget
            contract.discussion = discussion
            contract.save()
            content = content + "<br/>You can accept or decline this offer <a href='#' onclick='contract_agree(this)' data-id='" + str(
                contract.id) + "'>here</a>!"

        # QB chat send message from agent to influencer
        # asyncio.run(send_message(
        #     request.session['chat_session_token'],
        #     dialog_id,
        #     content
        # ))

        message = Message()
        if type == 'IA':
            message.sent_by = discussion.influencer.user
            message.sent_to = discussion.campaign.agent
        if type == 'AI' or type == 'CO':
            message.sent_by = discussion.campaign.agent
            message.sent_to = discussion.influencer.user

        message.discussion = discussion
        message.content = content
        message.save()

        if dialog_id:
            return HttpResponse(contract.id)
        else:
            return render(
                request, 'messages/message_body.html', {
                    'channel_messages':
                    Message.objects.filter(
                        discussion__id=discussion_id).order_by('sent_at'),
                })
コード例 #17
0
    def send_message(self, request, id=None):
        chat = get_object_or_404(self.queryset, id=id)
        user = get_object_or_404(Member.objects.all().filter(chat=chat), user=request.user)
        try:
            message = Message(
                user=request.user,
                chat=chat,
                text=request.data['text'],
            )
            message.save()

            serializer = MessageSerializer(message)
            return Response({'message': serializer.data}, status=status.HTTP_200_OK)
        except KeyError:
            return Response({}, status=status.HTTP_400_BAD_REQUEST)
コード例 #18
0
def add_message(req):
    content = req.POST.get('text', '')
    if content == '':
        return JsonResponse(
            {
                'errorCode': 'invalid_request',
                'errorMessage': 'Invalid request, no text parameter'
            },
            status=400)

    thread, created = Thread.objects.get_or_create(profile=req.user.profile)

    # rate limit
    if (thread.is_pending):
        last_staff_msg = Message.objects.filter(is_staff=True,
                                                thread=thread.id)
        ratelimit_hour = timezone.now() - timedelta(hours=6)

        time_check = ratelimit_hour
        if (last_staff_msg and last_staff_msg[0].timestamp > ratelimit_hour):
            # chose last hour, or the last time a staff replied
            time_check = last_staff_msg[0].timestamp

        count = Message.objects.filter(timestamp__gt=time_check).count()

        if (count >= 5):
            return JsonResponse(
                {
                    'errorCode':
                    'ratelimit',
                    'errorMessage':
                    'Please wait for a response before trying to send further requests.'
                },
                status=400)

    thread.is_pending = True
    thread.save()

    message = Message(thread=thread, content=content)
    message.save()

    template_email(settings.DEFAULT_FROM_EMAIL, settings.HELP_INCHARGE,
                   '[Mag:help] : ' + req.user.email, 'admin_help_request', {
                       'user': req.user.profile,
                       'message': message
                   })

    return HttpResponse(status=200)
コード例 #19
0
def reply(request):
    if not request.user.is_authenticated():
        return redirect('/home')
    sender = request.user
    pid = request.POST.get('pid', None)
    receiver = User.objects.get(id=pid)
    subject = request.POST.get('subject', None)
    text = request.POST.get('message', None)
    reply = Message(sender=sender,
                    receiver=receiver,
                    subject=subject,
                    message=text)
    reply.save()
    request.session['message'] = "Message Sent Successfully"
    request.session['message_type'] = True
    return redirect(profile)
コード例 #20
0
def submessage(request):
    msgs = Message.objects.all()[:2]
    name = request.POST.get('name', '')
    email = request.POST.get('email', '')
    phone_num = request.POST.get('address', '')
    mess = request.POST.get('message', '')
    if name != '':
        msg = Message()
        msg.name = name
        msg.email = email
        msg.phone_num = phone_num
        msg.messages = mess
        msg.save()
    return render(request, 'show.html', {
        'msgs': msgs,
    })
コード例 #21
0
def send(request):
    if not request.user.is_authenticated() or not request.user.is_active:
        return HttpResponse("-1")

    receiver = User.objects.get(username=request.POST.get('to'))
    sender = User.objects.get(username=request.POST.get('from'))
    body = request.POST.get('body')
    i = 0
    current = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M')
    profile = receiver.get_profile()
    profile.notify = profile.notify + 1
    profile.save()
    chats = Chat.objects.all()
    message = Message(receiver=receiver,
                      sender=sender,
                      body=body,
                      time=current)
    message.save()
    for chat in chats:
        if (chat.receiver == receiver
                and chat.sender == sender) or (chat.receiver == sender
                                               and chat.sender == receiver):
            temp = Chat.objects.get(id=chats[i].id)
            temp.notify = temp.notify + 1
            print temp.notify
            temp.messages.append(message)
            temp.time = current
            temp.save()
            #print i
            return HttpResponse("2")

        else:
            i = i + 1

    if i == len(chats):
        print "2"
        messages = []
        messages.append(message)
        chat = Chat(notify=1,
                    time=current,
                    receiver=receiver,
                    sender=sender,
                    messages=messages)
        chat.save()
        return HttpResponse("1")
コード例 #22
0
def create_message(request):
    token = request.headers.get('Authorization')[6:]
    form = MessageForm(request.POST, request.FILES)
    if form.is_valid():
        # print(request.POST, request.FILES)
        data = request.POST
        my_id = Token.objects.filter(key=token).values('user_id')[0]['user_id']
        message = Message(chat_id=data['chat_id'], user_id=my_id, content=data['content'])
        session = boto3.Session()
        s3_client = session.client(service_name='s3',
                                   endpoint_url='http://hb.bizmrg.com',
                                   aws_access_key_id='ns3JMEzqS7GkxRcCuvRDVh',
                                   aws_secret_access_key='8DvkXKZkUdebaEkBfnyGKhJBZaMaW4ybJdxwiN2WzeEv')  
        if request.POST['attachment_type'] == 'null':
            print('without attachment')
            message.save()
            return JsonResponse({'Result':'Message created without attachment'})
        elif request.POST['attachment_type'] == 'images':
            print('with images')
            message.save()
            uploaded_file = request.FILES.getlist('media')
            for file in uploaded_file:
                print(file)
                url_location = 'attachments/chat' + data['chat_id'] + '/' + data['attachment_type'] + '/' + file.name + '-' + str(hash(file))
                s3_client.put_object(Bucket='z3hdro_messenger', Key=url_location, Body = file)
                attach = Attachment(chat_id=data['chat_id'], user_id=my_id, message_id=message.id, type_attachment=data['attachment_type'], url = url_location)
                attach.save()
            return JsonResponse({'Result':'Message created with image attachment'})
        elif request.POST['attachment_type'] == 'audio_message':
            print('with audio')
            message.save()
            uploaded_file = request.FILES['media']
            url_location = 'attachments/chat' + data['chat_id'] + '/' + data['attachment_type'] + '/' + 'audio-' + str(hash(uploaded_file))
            s3_client.put_object(Bucket='z3hdro_messenger', Key=url_location, Body = uploaded_file)
            attach = Attachment(chat_id=data['chat_id'], user_id=my_id, message_id=message.id, type_attachment=data['attachment_type'], url = url_location)
            attach.save()
            return JsonResponse({'Result':'Message created with audiorecord attachment'})
        elif request.POST['attachment_type'] == 'geolocation':
            print('with geolocation')
            message.save()
            attach = Attachment(chat_id=data['chat_id'], user_id=my_id, message_id=message.id, type_attachment=data['attachment_type'], url = data['geolocation_url'])
            attach.save()
            return JsonResponse({'Result':'Message created with geolocation'})
        return JsonResponse({'error':'unexpected bug'}, status=400)
    return JsonResponse({'error': form.errors}, status=400, json_dumps_params={'ensure_ascii': False})
コード例 #23
0
ファイル: views.py プロジェクト: nrjshka/doSociety
    def post(self, request, format=None):
        if request.data['receiver_id']:
            #получаем отправителя и получателя
            sender = User.objects.get(username=request.user.username)
            receiver = User.objects.get(id=request.data['receiver_id'])

            msg = Message()

            msg.text = request.data['text']
            msg.save()

            msg.sender.add(sender)
            msg.receiver.add(receiver)

            msg.save()
            return Response({'status': True})
        else:
            return HttpResponseBadRequest()
コード例 #24
0
def create_message(request, pk):
    if request.method == 'POST':
        form = MessageForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            m = Message(user=request.user,
                        char=Chat.objects.get(id=pk),
                        content=data['text'])
            m.save()
            text = "Сообщение отправлено"
        else:
            text = "Ошибка при обработке данных"
    else:
        text = "Ошибка при отправке сообщения"
    id = pk
    return render_to_response('message/textform.html', {
        'text': text,
        'id': id
    })
コード例 #25
0
def createMessage(root):
    message = Message().defaultFields()
    # Handle messageID here
    for messageID in root.iter(TAG_PREFIX + 'MessageID'):
        message.messageID = messageID.text
    # Handle Prescriber here
    for prescriber in root.iter(TAG_PREFIX + 'Prescriber'):
        handlePrescriber(message, prescriber)
    # Handle Patient here
    for patient in root.iter(TAG_PREFIX + 'Patient'):
        handlePatient(message, patient)
    # Handle Medication here
    for medication in root.iter(TAG_PREFIX + 'MedicationPrescribed'):
        handleMedication(message, medication)
    # Handle Pharmacy here
    for pharmacy in root.iter(TAG_PREFIX + 'Pharmacy'):
        handlePharmacy(message, pharmacy)
    handleGeographicData(message)
    return message
コード例 #26
0
def ReplyMessage(request, mid):
    reply_to = Message.objects.get(pk=mid)
    if request.method == "POST":
        form = MessageForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            quoted_message = Message.objects.get(pk=mid)
            subject = data.get('subject')
            body = data.get('message')
            reply_message = Message(subject=subject, body=body)
            Inbox(request.user).reply_to_message(quoted_message=quoted_message,
                                                 reply_message=reply_message)
            messages.info(request, "Reply Sent", extra_tags="reply-confirm")
            return redirect('instructor:Inbox')
    else:
        form = MessageForm()

    context = {'MessageForm': form, 'mid': mid, 'reply_to': reply_to}
    return render(request, 'instructor/ReplyToMessage.html', context)
コード例 #27
0
    def form_valid(self, form, **kwargs):
        job = self.request.session['job']
        profile = Person.objects.get(person=self.request.user)
        form.instance.job = job
        form.instance.person = profile
        ids = []
        for d in job.discussion_set.all():
            if d.person != profile:
                ids.append(d.person.id)
        receiver = Person.objects.filter(id__in=ids)
        for person in receiver:
            message = """
				<a href='%s'>%s</a> has a comment on task <a href='%s'> %s</a>
					""" % (profile.get_absolute_url(), profile, job.get_absolute_url(), job)
            m = Message(title="Comment",
                        content=message,
                        receiver=person,
                        sender=profile)
            m.save()
        return super(AddDiscussion, self).form_valid(form)
コード例 #28
0
 def send_msg(msg: Msg):
     from message.models import Message, Recipient, Templates, Error
     from datetime import datetime
     template = Templates.objects.get(id=msg.id_template)
     msg_db = Message(subject=msg.subject,
                      text=msg.text,
                      id_template=template)
     msg_db.save()
     email = Email(AccountSMTP)
     for recipient in msg.recipients:
         recipient_db = Recipient(email=recipient, id_message=msg_db)
         recipient_db.save()
         error = email.send([recipient],
                            msg.subject,
                            html=template.html.format(**msg.variables))
         if error:
             Error(id_message=msg_db, description=error).save()
         else:
             recipient_db.send = datetime.now()
             recipient_db.save()
コード例 #29
0
def comment_create(request):
    parm = {}
    to_comment_id = int(request.POST.get("to_comment_id", 0))
    print("to_comment_id", to_comment_id)
    parm["content"] = request.POST.get("content")
    parm["article_id"] = request.POST.get("article_id")
    parm["b_id"] = request.POST.get("b_id")
    parm["page_no"] = request.POST.get("page_no")
    ok = {"status": "ok", "msg": "发布成功"}
    err = {"status": "err", "msg": "发布失败"}
    # article_id =64
    # content =request.POST["content"]
    article_id = parm["article_id"]
    content = parm["content"]
    article_id = int(article_id)
    article = Article.objects.get(id=article_id)
    name = request.user
    link = "http://%s/article/%s/%s/detail?page_no=%s" % (
        request.get_host(), parm["b_id"], parm["article_id"], parm["page_no"])
    form = CommentForm(request.POST)

    if to_comment_id != 0:
        to_comment = Comment.objects.get(id=to_comment_id)
        owner = to_comment.owner

    else:
        to_comment = None
        owner = article.owner
    if form.is_valid():
        comment = Comment(article=article,
                          owner=name,
                          content=content,
                          to_comment=to_comment,
                          status=0)
        comment.save()
        message = Message(owner=owner, content=content, link=link, status=0)
        message.save()

        return HttpResponse(json.dumps(ok))
    else:
        return HttpResponse(json.dumps(err))
コード例 #30
0
ファイル: views.py プロジェクト: merlinsbeard/tulong-dev
    def post(self, request, *args, **kwargs):
        """
                Button for adding new BIDDING, COMMENTING, and DISCUSSION.
                gets session of job to be passed to bid, comment, or discusion application
                """

        profile = Person.objects.get(person=request.user)
        kaakay = Person.objects.get(slug=kwargs['slug'])
        request.session['kaakay'] = kaakay

        context = {'status': request.session['kaakay']}
        kaakay = self.request.session['kaakay']
        poster = Person.objects.get(person=self.request.user)
        message = "<a href='%s'>%s</a> wants you for task" % (
            poster.get_absolute_url(), poster)
        m = Message(title="Poster wants you!",
                    content=message,
                    receiver=kaakay,
                    sender=profile)
        m.save()
        return HttpResponseRedirect('/job/post')