diff --git a/archilance/urls.py b/archilance/urls.py index b890a8a..d08281c 100644 --- a/archilance/urls.py +++ b/archilance/urls.py @@ -12,6 +12,7 @@ urlpatterns = [ url(r'^chattest$', TestChatTemplateView.as_view()), url(r'^test/$', TemplateView.as_view(template_name='test.html'), name='test'), url(r'^projects/', include('projects.urls')), + url(r'^chat/', include('chat.urls')), url(r'^specializations/', include('specializations.urls')), url(r'^users/', include('registration.backends.default.urls')), url(r'^users/', include('users.urls')), diff --git a/chat/admin.py b/chat/admin.py index a44a4f5..e064b6c 100644 --- a/chat/admin.py +++ b/chat/admin.py @@ -1,4 +1,7 @@ from django.contrib import admin from .models import Message -admin.site.register(Message) +class MessageAdmin(admin.ModelAdmin): + list_display = ('text', 'sender', 'recipent',) + +admin.site.register(Message, MessageAdmin) diff --git a/chat/migrations/0004_auto_20160630_1204.py b/chat/migrations/0004_auto_20160630_1204.py new file mode 100644 index 0000000..9604c3e --- /dev/null +++ b/chat/migrations/0004_auto_20160630_1204.py @@ -0,0 +1,26 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.6 on 2016-06-30 09:04 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('chat', '0003_auto_20160629_1914'), + ] + + operations = [ + migrations.AddField( + model_name='message', + name='private_type', + field=models.BooleanField(default=False), + ), + migrations.AlterField( + model_name='message', + name='order', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='order_messages', to='projects.Order'), + ), + ] diff --git a/chat/models.py b/chat/models.py index fb29a4d..63517e5 100644 --- a/chat/models.py +++ b/chat/models.py @@ -8,9 +8,10 @@ from users.models import User class Message(models.Model): text = models.TextField() created = models.DateTimeField(default=timezone.now) - order = models.ForeignKey(Order, related_name='order_messages') + order = models.ForeignKey(Order, related_name='order_messages',null=True, blank=True) sender = models.ForeignKey(User, related_name='sender_messages') recipent = models.ForeignKey(User, related_name='recipent_messages') + private_type = models.BooleanField(default=False) def __str__(self): return self.text diff --git a/chat/templates/chat_contractor.html b/chat/templates/chat_contractor.html new file mode 100644 index 0000000..b62488c --- /dev/null +++ b/chat/templates/chat_contractor.html @@ -0,0 +1,475 @@ +{% extends 'partials/base.html' %} +{% load staticfiles %} +{% block content %} +{% include 'partials/header.html' %} +
+ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
+Прикрепить файл
+ + Не более 10 файлов с общим объемом 500мб + +Входящие документы
+Для заметок
+ + сохранить +{{ msg.sender.get_full_name }}
+ {{ msg.created }} +{{ msg }}
+Прикрепить файл
+ + Не более 10 файлов с общим объемом 500мб + +Для заметок
+ + сохранить ++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. +
+Прикрепить файл
+ + Не более 10 файлов с общим объемом 500мб + +Этапы работы
+1 / Согласование условий
++ Обсуджение задания и условий выполнения работы. Подтверждение заказа исполнителем. +
++ Этап 1Название этапа +
++ Результаты этапа: Готовый чертеж 1 +
+до 16.03.2015
+ 30 000 ++ Этап 2Название этапа +
++ Результаты этапа: Готовый чертеж 1 +
+до 16.03.2015
+ 30 000 +2 / Резервирование
++ Резервирование заказчиком суммы оплаты по заказ. Деньги перечисляются и хранятся на сайте. +
+3 / Выполнение работы
++ Процесс выполнения задания в заказе до получения заказчиком итогового результата работы. +
++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. +
+Прикрепить файл
+ + Не более 10 файлов с общим объемом 500мб + +Входящие документы
+Для заметок
+ + сохранить ++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. +
+Прикрепить файл
+ + Не более 10 файлов с общим объемом 500мб + +Для заметок
+ + сохранить ++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Иванов Петр Иванович +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. +
++ Вы +
+ + 13.0.2016 / 21:05 + ++ Lorem ipsum dolor sit amet, consectetur adipiscing elit. +
+Прикрепить файл
+ + Не более 10 файлов с общим объемом 500мб + +Этапы работы
+1 / Согласование условий
++ Обсуджение задания и условий выполнения работы. Подтверждение заказа исполнителем. +
++ Этап 1Название этапа +
++ Результаты этапа: Готовый чертеж 1 +
+до 16.03.2015
+ 30 000 ++ Этап 2Название этапа +
++ Результаты этапа: Готовый чертеж 1 +
+до 16.03.2015
+ 30 000 +2 / Резервирование
++ Резервирование заказчиком суммы оплаты по заказ. Деньги перечисляются и хранятся на сайте. +
+3 / Выполнение работы
++ Процесс выполнения задания в заказе до получения заказчиком итогового результата работы. +
+