Author: rgardler Date: Tue Jul 28 08:59:36 2015 New Revision: 1693038 URL: http://svn.apache.org/r1693038 Log: allow groups to be marked as not applicable and filter them from the index view
Modified: comdev/tools/events_list/models.py comdev/tools/events_list/templates/events/index.html comdev/tools/events_list/templates/groups/index.html comdev/tools/events_list/urls.py comdev/tools/events_list/views.py Modified: comdev/tools/events_list/models.py URL: http://svn.apache.org/viewvc/comdev/tools/events_list/models.py?rev=1693038&r1=1693037&r2=1693038&view=diff ============================================================================== --- comdev/tools/events_list/models.py (original) +++ comdev/tools/events_list/models.py Tue Jul 28 08:59:36 2015 @@ -7,6 +7,7 @@ class Group(models.Model): state = models.CharField(max_length=25) country = models.CharField(max_length=30) meetupID = models.BigIntegerField(verbose_name = "Meetups.com ID", unique=True) + is_applicable = models.BooleanField(help_text = "Indicates if a group is applicable to our audience or not. If marked as not applicable meetups organized by this group will be automatically set to not applicable", default=True) def __str__(self): return self.name @@ -79,9 +80,11 @@ class Event(models.Model): class Log(models.Model): EVENT_UPDATE = 'EU' EVENT_IMPORT = 'EI' + GROUP_UPDATE = 'GU' ACTION_TYPE_CHOICES = ( (EVENT_UPDATE, 'Event Update'), (EVENT_IMPORT, 'Event Import'), + (GROUP_UPDATE, 'Group Update'), ) description = models.CharField(max_length=200) datetime = models.DateTimeField(default=datetime.now) Modified: comdev/tools/events_list/templates/events/index.html URL: http://svn.apache.org/viewvc/comdev/tools/events_list/templates/events/index.html?rev=1693038&r1=1693037&r2=1693038&view=diff ============================================================================== --- comdev/tools/events_list/templates/events/index.html (original) +++ comdev/tools/events_list/templates/events/index.html Tue Jul 28 08:59:36 2015 @@ -39,7 +39,7 @@ {% endfor %} </td> <td data-order='{{ event.date_sort }}'>{{ event.local_start }}</td> - <td><a href="{% url 'toggleNA' event.id %}">Mark N/A</a></td> + <td><a href="{% url 'toggleEventNA' event.id %}">Mark N/A</a></td> </tr> {% endfor %} </tbody> Modified: comdev/tools/events_list/templates/groups/index.html URL: http://svn.apache.org/viewvc/comdev/tools/events_list/templates/groups/index.html?rev=1693038&r1=1693037&r2=1693038&view=diff ============================================================================== --- comdev/tools/events_list/templates/groups/index.html (original) +++ comdev/tools/events_list/templates/groups/index.html Tue Jul 28 08:59:36 2015 @@ -35,9 +35,12 @@ <td>{{ group.city }}</td> <td>{{ group.state }}</td> <td>{{ group.country }}</td> - {% if can_import %} - <td><a href="{% url 'importMembers' group.id %}">Import Members</a></td> - {% endif %} + <td> + {% if can_import %} + <a href="{% url 'importMembers' group.id %}">Import Members</a> + {% endif %} | + <a href="{% url 'toggleGroupNA' group.id %}">Mark N/A</a> + </td> </tr> {% endfor %} </tbody> Modified: comdev/tools/events_list/urls.py URL: http://svn.apache.org/viewvc/comdev/tools/events_list/urls.py?rev=1693038&r1=1693037&r2=1693038&view=diff ============================================================================== --- comdev/tools/events_list/urls.py (original) +++ comdev/tools/events_list/urls.py Tue Jul 28 08:59:36 2015 @@ -5,10 +5,11 @@ from . import views urlpatterns = [ url(r'^$', views.index, name='eventIndex'), url(r'^(?P<event_id>[0-9]+)/$', views.viewEvent, name='viewEvent'), - url(r'^(?P<event_id>[0-9]+)/toggleNA/$', views.toggleNA, name='toggleNA'), + url(r'^(?P<event_id>[0-9]+)/toggleNA/$', views.toggleEventNA, name='toggleEventNA'), url(r'^importMeetups/$', views.importMeetups, name='importMeetups'), url(r'^groups$', views.groupIndex, name='groupIndex'), + url(r'^groups/(?P<id>[0-9]+)/toggleNA/$', views.toggleGroupNA, name='toggleGroupNA'), url(r'^groups/(?P<group_id>[0-9]+)/importMembers/$', views.importMembers, name='importMembers'), url(r'^people$', views.personIndex, name='personIndex'), Modified: comdev/tools/events_list/views.py URL: http://svn.apache.org/viewvc/comdev/tools/events_list/views.py?rev=1693038&r1=1693037&r2=1693038&view=diff ============================================================================== --- comdev/tools/events_list/views.py (original) +++ comdev/tools/events_list/views.py Tue Jul 28 08:59:36 2015 @@ -37,7 +37,7 @@ def viewEvent(request, event_id): }) return HttpResponse(template.render(context)) -def toggleNA(request, event_id): +def toggleEventNA(request, event_id): # toggle the is_applicable field on a given record event = get_object_or_404(Event, pk = event_id) event.is_applicable = not event.is_applicable @@ -57,7 +57,7 @@ def toggleNA(request, event_id): return redirect('events_list.views.index') def groupIndex(request): - groups_list = Group.objects.all() + groups_list = Group.objects.all().filter(is_applicable = True) template = loader.get_template('groups/index.html') context = RequestContext(request, { 'groups_list': groups_list, @@ -65,6 +65,25 @@ def groupIndex(request): }) return HttpResponse(template.render(context)) +def toggleGroupNA(request, id): + # toggle the is_applicable field on a given record + group = get_object_or_404(Group, pk = id) + group.is_applicable = not group.is_applicable + group.save() + + log = Log(); + desc = "Group (id=" + id + ") marked as " + if (group.is_applicable): + desc = desc + "applicable " + else: + desc = desc + "not applicable " + log.description = desc; + log.object_id = id + log.action_type = Log.GROUP_UPDATE + log.save() + + return redirect('events_list.views.groupIndex') + def personIndex(request): person_list = Person.objects.all() template = loader.get_template('people/index.html')