app/soc/modules/soc_core/callback.py
author Mario Ferraro <fadinlight@gmail.com>
Sun, 15 Nov 2009 22:12:20 +0100
changeset 3093 d1be59b6b627
parent 3035 2650a71ca836
permissions -rw-r--r--
GMaps related JS changed to use new google namespace. Google is going to change permanently in the future the way to load its services, so better stay safe. Also this commit shows uses of the new melange.js module. Fixes Issue 634.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     1
# Copyright 2009 the Melange authors.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     2
#
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     3
# Licensed under the Apache License, Version 2.0 (the "License");
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     4
# you may not use this file except in compliance with the License.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     5
# You may obtain a copy of the License at
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     6
#
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     7
#     http://www.apache.org/licenses/LICENSE-2.0
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     8
#
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
     9
# Unless required by applicable law or agreed to in writing, software
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    10
# distributed under the License is distributed on an "AS IS" BASIS,
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    11
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    12
# See the License for the specific language governing permissions and
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    13
# limitations under the License.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    14
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    15
"""Module containing the core callback.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    16
"""
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    17
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    18
__authors__ = [
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    19
  '"Sverre Rabbelier" <sverre@rabbelier.nl>',
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    20
  '"Lennard de Rijk" <ljvderijk@gmail.com>',
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    21
  ]
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    22
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    23
2620
f8b735c73563 Added GradingSurveyGroup tasks to the core URL's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2605
diff changeset
    24
from soc.tasks import grading_survey_group as grading_group_tasks
2597
b003cd9b954c Added the Surveys Tasks to the registered URL patterns.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2586
diff changeset
    25
from soc.tasks import surveys as survey_tasks
2925
d1de20978875 Moved the updater to its own module.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2911
diff changeset
    26
from soc.tasks.updates import start_update
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    27
from soc.views.models import club
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    28
from soc.views.models import club_app
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    29
from soc.views.models import club_admin
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    30
from soc.views.models import club_member
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    31
from soc.views.models import cron
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    32
from soc.views.models import document
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2436
diff changeset
    33
from soc.views.models import grading_project_survey as grading_survey
2586
283bb903b216 Added GradingSurveyGroup to the sitemap and sidebar.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2582
diff changeset
    34
from soc.views.models import grading_survey_group
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    35
from soc.views.models import host
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    36
from soc.views.models import job
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    37
from soc.views.models import mentor
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    38
from soc.views.models import notification
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    39
from soc.views.models import organization
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    40
from soc.views.models import org_admin
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    41
from soc.views.models import org_app
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    42
from soc.views.models import priority_group
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    43
from soc.views.models import program
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2436
diff changeset
    44
from soc.views.models import project_survey
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    45
from soc.views.models import request
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    46
from soc.views.models import site
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    47
from soc.views.models import sponsor
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    48
from soc.views.models import student
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    49
from soc.views.models import student_project
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    50
from soc.views.models import student_proposal
2436
cbcd87155630 Added Surveys to the sitemap.
Daniel Diniz <ajaksu@gmail.com>
parents: 2358
diff changeset
    51
from soc.views.models import survey
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    52
from soc.views.models import timeline
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    53
from soc.views.models import user
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    54
from soc.views.models import user_self
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    55
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    56
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    57
class Callback(object):
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    58
  """Callback object that handles interaction between the core.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    59
  """
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    60
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    61
  API_VERSION = 1
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    62
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    63
  def __init__(self, core):
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    64
    """Initializes a new Callback object for the specified core.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    65
    """
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    66
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    67
    self.core = core
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    68
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    69
    # disable clubs
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    70
    self.enable_clubs = False
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    71
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    72
  def registerWithSitemap(self):
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    73
    """Called by the server when sitemap entries should be registered.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    74
    """
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    75
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    76
    self.core.requireUniqueService('registerWithSitemap')
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    77
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    78
    if self.enable_clubs:
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    79
      self.core.registerSitemapEntry(club.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    80
      self.core.registerSitemapEntry(club_admin.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    81
      self.core.registerSitemapEntry(club_app.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    82
      self.core.registerSitemapEntry(club_member.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    83
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    84
    self.core.registerSitemapEntry(cron.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    85
    self.core.registerSitemapEntry(document.view.getDjangoURLPatterns())
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2436
diff changeset
    86
    self.core.registerSitemapEntry(grading_survey.view.getDjangoURLPatterns())
2625
13a80adefcc6 Style fix in callback.py
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2620
diff changeset
    87
    self.core.registerSitemapEntry(
13a80adefcc6 Style fix in callback.py
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2620
diff changeset
    88
        grading_survey_group.view.getDjangoURLPatterns())
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    89
    self.core.registerSitemapEntry(host.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    90
    self.core.registerSitemapEntry(job.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    91
    self.core.registerSitemapEntry(mentor.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    92
    self.core.registerSitemapEntry(notification.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    93
    self.core.registerSitemapEntry(organization.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    94
    self.core.registerSitemapEntry(org_admin.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    95
    self.core.registerSitemapEntry(org_app.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    96
    self.core.registerSitemapEntry(priority_group.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    97
    self.core.registerSitemapEntry(program.view.getDjangoURLPatterns())
2495
0113c2de89d3 Enable the ProjectSurvey and GradingProjectSurvey views in the core.
Daniel Diniz <ajaksu@gmail.com>
parents: 2436
diff changeset
    98
    self.core.registerSitemapEntry(project_survey.view.getDjangoURLPatterns())
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
    99
    self.core.registerSitemapEntry(request.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   100
    self.core.registerSitemapEntry(site.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   101
    self.core.registerSitemapEntry(sponsor.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   102
    self.core.registerSitemapEntry(student.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   103
    self.core.registerSitemapEntry(student_project.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   104
    self.core.registerSitemapEntry(student_proposal.view.getDjangoURLPatterns())
2436
cbcd87155630 Added Surveys to the sitemap.
Daniel Diniz <ajaksu@gmail.com>
parents: 2358
diff changeset
   105
    self.core.registerSitemapEntry(survey.view.getDjangoURLPatterns())
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   106
    self.core.registerSitemapEntry(timeline.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   107
    self.core.registerSitemapEntry(user_self.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   108
    self.core.registerSitemapEntry(user.view.getDjangoURLPatterns())
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   109
2597
b003cd9b954c Added the Surveys Tasks to the registered URL patterns.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2586
diff changeset
   110
    # register task URL's
2620
f8b735c73563 Added GradingSurveyGroup tasks to the core URL's.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2605
diff changeset
   111
    self.core.registerSitemapEntry(grading_group_tasks.getDjangoURLPatterns())
2911
2ddd386d1dbd Changed the conversion starter system to an update starter system.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2883
diff changeset
   112
    self.core.registerSitemapEntry(start_update.getDjangoURLPatterns())
2597
b003cd9b954c Added the Surveys Tasks to the registered URL patterns.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2586
diff changeset
   113
    self.core.registerSitemapEntry(survey_tasks.getDjangoURLPatterns())
b003cd9b954c Added the Surveys Tasks to the registered URL patterns.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2586
diff changeset
   114
2333
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   115
  def registerWithSidebar(self):
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   116
    """Called by the server when sidebar entries should be registered.
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   117
    """
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   118
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   119
    self.core.requireUniqueService('registerWithSidebar')
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   120
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   121
    if self.enable_clubs:
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   122
      self.core.registerSidebarEntry(club.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   123
      self.core.registerSidebarEntry(club.view.getExtraMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   124
      self.core.registerSidebarEntry(club_admin.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   125
      self.core.registerSidebarEntry(club_member.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   126
      self.core.registerSidebarEntry(club_app.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   127
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   128
    self.core.registerSidebarEntry(user_self.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   129
    self.core.registerSidebarEntry(site.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   130
    self.core.registerSidebarEntry(user.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   131
    self.core.registerSidebarEntry(sponsor.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   132
    self.core.registerSidebarEntry(sponsor.view.getExtraMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   133
    self.core.registerSidebarEntry(host.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   134
    self.core.registerSidebarEntry(request.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   135
    self.core.registerSidebarEntry(program.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   136
    self.core.registerSidebarEntry(program.view.getExtraMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   137
    self.core.registerSidebarEntry(student.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   138
    self.core.registerSidebarEntry(student_project.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   139
    self.core.registerSidebarEntry(student_proposal.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   140
    self.core.registerSidebarEntry(organization.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   141
    self.core.registerSidebarEntry(organization.view.getExtraMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   142
    self.core.registerSidebarEntry(org_admin.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   143
    self.core.registerSidebarEntry(mentor.view.getSidebarMenus)
221482a54238 First step in the module design
Sverre Rabbelier <sverre@rabbelier.nl>
parents:
diff changeset
   144
    self.core.registerSidebarEntry(org_app.view.getSidebarMenus)
2586
283bb903b216 Added GradingSurveyGroup to the sitemap and sidebar.
Lennard de Rijk <ljvderijk@gmail.com>
parents: 2582
diff changeset
   145
    self.core.registerSidebarEntry(grading_survey_group.view.getSidebarMenus)
2956
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   146
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   147
  def registerRights(self):
3035
2650a71ca836 Minor typographical errors fixed.
Daniel Hans <Daniel.M.Hans@gmail.com>
parents: 2960
diff changeset
   148
    """Called by the server when the document rights should be registered.
2956
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   149
    """
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   150
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   151
    site_membership = {
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   152
        'admin': [],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   153
        'restricted': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   154
        'member': ['user'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   155
        'list': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   156
        }
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   157
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   158
    club_membership = {
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   159
        'admin': ['host', 'club_admin'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   160
        'restricted': ['host', 'club_admin'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   161
        'member': ['host', 'club_admin', 'club_member'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   162
        'list': ['host', 'club_admin', 'club_member'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   163
        }
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   164
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   165
    sponsor_membership = {
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   166
        'admin': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   167
        'restricted': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   168
        'member': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   169
        'list': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   170
        }
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   171
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   172
    program_membership = {
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   173
        'admin': ['host'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   174
        'restricted': ['host', 'org_admin'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   175
        'member': ['host', 'org_admin', 'org_mentor', 'org_student'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   176
        'list': ['host', 'org_admin', 'org_mentor'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   177
        }
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   178
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   179
    organization_membership = {
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   180
        'admin': ['host', 'org_admin'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   181
        'restricted': ['host', 'org_admin', 'org_mentor'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   182
        'member': ['host', 'org_admin', 'org_mentor', 'org_student'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   183
        'list': ['host', 'org_admin', 'org_mentor'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   184
        }
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   185
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   186
    user_membership = {
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   187
        'admin': ['user_self'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   188
        'restricted': ['user_self'], # ,'friends'
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   189
        'member': ['user'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   190
        'list': ['user_self'],
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   191
        }
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   192
50ce8ac13932 Use the new rights code in core
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2925
diff changeset
   193
    self.core.registerRight('site', site_membership)
2960
d91e4a51943c Use ',' instead of ':' in function call
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2959
diff changeset
   194
    self.core.registerRight('club', club_membership)
d91e4a51943c Use ',' instead of ':' in function call
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2959
diff changeset
   195
    self.core.registerRight('sponsor', sponsor_membership)
d91e4a51943c Use ',' instead of ':' in function call
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2959
diff changeset
   196
    self.core.registerRight('program', program_membership)
d91e4a51943c Use ',' instead of ':' in function call
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2959
diff changeset
   197
    self.core.registerRight('org', organization_membership)
d91e4a51943c Use ',' instead of ':' in function call
Sverre Rabbelier <srabbelier@gmail.com>
parents: 2959
diff changeset
   198
    self.core.registerRight('user', user_membership)