diff --git a/RIGS/migrations/0023_auto_20150529_0048.py b/RIGS/migrations/0023_auto_20150529_0048.py new file mode 100644 index 00000000..27fbc42b --- /dev/null +++ b/RIGS/migrations/0023_auto_20150529_0048.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +import django.core.validators +import django.contrib.auth.models + + +class Migration(migrations.Migration): + + dependencies = [ + ('RIGS', '0022_auto_20150424_2104'), + ] + + operations = [ + migrations.AlterModelOptions( + name='profile', + options={'permissions': (('view_profile', 'Can view Profile'),)}, + ), + migrations.AlterModelManagers( + name='profile', + managers=[ + ('objects', django.contrib.auth.models.UserManager()), + ], + ), + migrations.AlterField( + model_name='event', + name='collector', + field=models.CharField(max_length=255, null=True, verbose_name=b'collected by', blank=True), + ), + migrations.AlterField( + model_name='organisation', + name='email', + field=models.EmailField(max_length=254, null=True, blank=True), + ), + migrations.AlterField( + model_name='person', + name='email', + field=models.EmailField(max_length=254, null=True, blank=True), + ), + migrations.AlterField( + model_name='profile', + name='email', + field=models.EmailField(max_length=254, verbose_name='email address', blank=True), + ), + migrations.AlterField( + model_name='profile', + name='groups', + field=models.ManyToManyField(related_query_name='user', related_name='user_set', to='auth.Group', blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', verbose_name='groups'), + ), + migrations.AlterField( + model_name='profile', + name='last_login', + field=models.DateTimeField(null=True, verbose_name='last login', blank=True), + ), + migrations.AlterField( + model_name='profile', + name='username', + field=models.CharField(error_messages={'unique': 'A user with that username already exists.'}, max_length=30, validators=[django.core.validators.RegexValidator('^[\\w.@+-]+$', 'Enter a valid username. This value may contain only letters, numbers and @/./+/-/_ characters.', 'invalid')], help_text='Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only.', unique=True, verbose_name='username'), + ), + migrations.AlterField( + model_name='venue', + name='email', + field=models.EmailField(max_length=254, null=True, blank=True), + ), + ] diff --git a/RIGS/models.py b/RIGS/models.py index 57fb0558..0c06ebbb 100644 --- a/RIGS/models.py +++ b/RIGS/models.py @@ -38,9 +38,18 @@ class Profile(AbstractUser): def name(self): return self.get_full_name() + ' "' + self.initials + '"' + @property + def latest_events(self): + return self.event_mic.order_by('-start_date').select_related('person', 'organisation', 'venue', 'mic') + def __str__(self): return self.name + class Meta: + permissions = ( + ('view_profile', 'Can view Profile'), + ) + class RevisionMixin(object): @property def last_edited_at(self): diff --git a/RIGS/templates/RIGS/activity_feed_data.html b/RIGS/templates/RIGS/activity_feed_data.html index 4083a81d..e0e454bf 100644 --- a/RIGS/templates/RIGS/activity_feed_data.html +++ b/RIGS/templates/RIGS/activity_feed_data.html @@ -5,7 +5,7 @@ {% load to_class_name from filters %} {% block content %} - {% if request.is_ajax %} +
{% for version in object_list %} @@ -19,9 +19,11 @@
{% endif %}
- - - + {% if version.revision.user %} + + + + {% endif %}
{{ version.revision.user.name }} @@ -45,5 +47,5 @@
- {% endif %} + {% endblock %} \ No newline at end of file diff --git a/RIGS/templates/RIGS/profile_detail.html b/RIGS/templates/RIGS/profile_detail.html index ca368ead..33437ea4 100644 --- a/RIGS/templates/RIGS/profile_detail.html +++ b/RIGS/templates/RIGS/profile_detail.html @@ -1,91 +1,104 @@ -{% extends 'base.html' %} +{% extends request.is_ajax|yesno:"base_ajax.html,base.html" %} {% block title %}RIGS Profile {{object.pk}}{% endblock %} {% block content %} -
- -
- -
-

{{object.name}}

+
+
+ +
+

{{object.name}}

+
+ {% if not request.is_ajax %} + {% if object.pk == user.pk %} + + {% endif %} + {% endif %} +
+
+
First Name
+
{{object.first_name}}
+ +
Last Name
+
{{object.last_name}}
+ +
Email
+
{{object.email}}
+ +
Last Login
+
{{object.last_login|date:"d/m/Y H:i"}}
+ +
Date Joined
+
{{object.date_joined|date:"d/m/Y H:i"}}
+ +
Initials
+
{{object.initials}}
+ +
Phone
+
{{object.phone}}
+
+ {% if not request.is_ajax %} + {% if object.pk == user.pk %} + + + +

Personal iCal Details

+ +
+
API Key
+
+ {% if user.api_key %} + {{user.api_key}} + {% else %} + No API Key Generated + {% endif %} +
+ +
Calendar URL
+
+ {% if user.api_key %} +
http{{ request.is_secure|yesno:"s,"}}://{{ request.get_host }}{% url 'ics_calendar' api_pk=user.pk api_key=user.api_key %}
+ Click here to add to google calendar.
+ To sync from google calendar to mobile device, visit this page on your device and tick "RIGS Calendar".
+ {% else %} +
No API Key Generated
+ {% endif %} + +
+
+ {% endif %} + {% endif %} +
+ +
+
+ +
+
- {% if object.pk == user.pk %} -
-
- - Edit Profile - - - Change Password - + +
+
+

Events

+ {% with object.latest_events as events %} + {% include 'RIGS/event_table.html' %} + {% endwith %}
- {% endif %} -
-
-
First Name
-
{{object.first_name}}
- -
Last Name
-
{{object.last_name}}
- -
Email
-
{{object.email}}
- -
Last Login
-
{{object.last_login|date:"d/m/Y H:i"}}
- -
Date Joined
-
{{object.date_joined|date:"d/m/Y H:i"}}
- -
Initials
-
{{object.initials}}
- -
Phone
-
{{object.phone}}
-
- {% if object.pk == user.pk %} - - - -

Personal iCal Details

- -
-
API Key
-
- {% if user.api_key %} - {{user.api_key}} - {% else %} - No API Key Generated - {% endif %} -
- -
Calendar URL
-
- {% if user.api_key %} -
http{{ request.is_secure|yesno:"s,"}}://{{ request.get_host }}{% url 'ics_calendar' api_pk=user.pk api_key=user.api_key %}
- Click here to add to google calendar.
- To sync from google calendar to mobile device, visit this page on your device and tick "RIGS Calendar".
- {% else %} -
No API Key Generated
- {% endif %} - -
-
- - {% endif %}
- -
-
- -
-
{% endblock %} \ No newline at end of file diff --git a/db.sqlite3 b/db.sqlite3 index 84db0c6d..312d4040 100644 Binary files a/db.sqlite3 and b/db.sqlite3 differ