#!/usr/bin/python2.5## Copyright 2009 the Melange authors.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an "AS IS" BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License."""Views for Jobs."""__authors__ = [ '"Sverre Rabbelier" <sverre@rabbelier.nl>', ]from django import formsfrom soc.logic import dictsfrom soc.logic.models.job import logic as job_logicfrom soc.views.helper import accessfrom soc.views.helper import decoratorsfrom soc.views.helper import widgetsfrom soc.views.models import baseclass View(base.View): """View methods for the Job model. """ def __init__(self, params=None): """Defines the fields and methods required for the base View class to provide the user with list, public, create, edit and delete views. Params: params: a dict with params for this View """ rights = access.Checker(params) new_params = {} new_params['rights'] = rights new_params['logic'] = job_logic new_params['name'] = "Job" new_params['no_create_raw'] = True new_params['no_create_with_scope'] = True new_params['no_create_with_key_fields'] = True new_params['extra_dynaexclude'] = ['key_data', 'text_data'] new_params['edit_dynaproperties'] = { 'task': forms.CharField(widget=widgets.PlainTextWidget()), } params = dicts.merge(params, new_params) super(View, self).__init__(params=params)view = View()delete = decorators.view(view.delete)edit = decorators.view(view.edit)list = decorators.view(view.list)public = decorators.view(view.public)